| View previous topic :: View next topic |
| Author |
Message |
Mark Pearce
Joined: 12 Jan 2012 Posts: 61 Location: London, England
|
Post subject: Re: C# Performance Posted: Mon Jan 30, 2012 9:55 pm |
|
|
| Richard Allbert wrote: |
The following position
r3k2r/p1ppqpb1/bn2pnp1/3PN3/1p2P3/2N2Q1p/PPPBBPPP/R3K2R w KQkq - 0 1
has 193690690 leafnodes to depth 5, which took the program 78s, or 2488kns.
2488kns wasn't as bad as I thought it would be, but it's still pretty slow - for example, there is no hashing of the position key here, or any updating of material counters.
Also, the move generation at 12% is less than I thought it would be.
.......
The biggest performance hogger is SqIsAttackedBySide(), correct? |
My program shows the same number of perft 5 leaf nodes for that position as yours. It also shows the total number of nodes to be 197,876,242. This would make your moves-per-second number look a little better, as I think it should be based on total nodes rather than just leaf nodes.
My program is also C#, and my IsAttacked routine (presumably roughly equivalent to your SqIsAttacked* routines) shows a slightly smaller percentage than yours. But my move generation percentage is significantly higher than yours, possibly because I'm doing copy-make-restore rather than make-unmake .
I agree with Marco looking at the detailed line timings of a few routines such as SqIsAttacked is the right approach. _________________ Theory is when you know something, but it doesn't work. Practice is when something works, but you don't know why. Chess programmers combine theory and practice: Nothing works and they don't know why. |
|
| Back to top |
|
 |
|
| Subject |
Author |
Date/Time |
C# Performance |
Richard Allbert |
Fri Jan 27, 2012 8:41 pm |
Re: C# Performance |
Kevin Hearn |
Fri Jan 27, 2012 9:01 pm |
Re: C# Performance |
Richard Allbert |
Fri Jan 27, 2012 9:13 pm |
Re: C# Performance |
Gary |
Fri Jan 27, 2012 9:07 pm |
Re: C# Performance |
Richard Allbert |
Fri Jan 27, 2012 9:17 pm |
Re: C# Performance |
Gary |
Fri Jan 27, 2012 10:09 pm |
Re: C# Performance |
Mark Pearce |
Sat Jan 28, 2012 12:59 am |
Re: C# Performance |
Richard Allbert |
Sat Jan 28, 2012 8:44 am |
Re: C# Performance |
Sven Schüle |
Sat Jan 28, 2012 9:48 am |
Re: C# Performance |
Richard Allbert |
Sat Jan 28, 2012 10:25 am |
Re: C# Performance |
Richard Allbert |
Sat Jan 28, 2012 11:41 am |
Re: C# Performance |
Mark Pearce |
Sat Jan 28, 2012 11:44 am |
Re: C# Performance |
Richard Allbert |
Sat Jan 28, 2012 10:31 am |
Re: C# Performance |
Marco Costalba |
Sat Jan 28, 2012 1:09 pm |
Re: C# Performance |
Lucas Braesch |
Sat Jan 28, 2012 1:52 pm |
Re: C# Performance |
Richard Allbert |
Sat Jan 28, 2012 2:05 pm |
Re: C# Performance |
Marco Costalba |
Sat Jan 28, 2012 2:30 pm |
Re: C# Performance |
Richard Allbert |
Sat Jan 28, 2012 5:22 pm |
Re: C# Performance |
Sven Schüle |
Sat Jan 28, 2012 6:02 pm |
Re: C# Performance |
Richard Allbert |
Sat Jan 28, 2012 6:12 pm |
Re: C# Performance |
Robert Purves |
Sat Jan 28, 2012 10:17 pm |
Re: C# Performance |
Marco Costalba |
Sat Jan 28, 2012 10:25 pm |
Re: C# Performance |
Thomas Petzke |
Sat Jan 28, 2012 4:21 pm |
Re: C# Performance |
Richard Allbert |
Mon Jan 30, 2012 12:52 pm |
Re: C# Performance |
Marco Costalba |
Mon Jan 30, 2012 6:37 pm |
Re: C# Performance |
Richard Allbert |
Wed Feb 01, 2012 6:55 pm |
Re: C# Performance |
Marco Costalba |
Wed Feb 01, 2012 7:18 pm |
Re: C# Performance |
Mark Pearce |
Mon Jan 30, 2012 9:55 pm |
Re: C# Performance |
Richard Allbert |
Wed Feb 01, 2012 6:57 pm |
Re: C# Performance |
Mark Pearce |
Wed Feb 01, 2012 9:59 pm |
Re: C# Performance |
Mark Pearce |
Fri Feb 03, 2012 1:34 am |
Re: C# Performance |
Robert Purves |
Fri Feb 03, 2012 3:26 am |
Re: C# Performance |
Mark Pearce |
Fri Feb 03, 2012 9:28 am |
Re: C# Performance |
Sven Schüle |
Fri Feb 03, 2012 9:45 am |
Re: C# Performance |
Mark Pearce |
Sat Feb 04, 2012 7:57 pm |
Re: C# Performance |
Sven Schüle |
Sat Feb 04, 2012 10:36 pm |
Re: C# Performance |
Mark Pearce |
Sat Feb 04, 2012 11:49 pm |
Re: C# Performance |
Sven Schüle |
Sun Feb 05, 2012 12:51 am |
Re: C# Performance |
Mark Pearce |
Sun Feb 05, 2012 1:05 am |
Re: C# Performance |
Sven Schüle |
Fri Feb 03, 2012 10:04 am |
Re: C# Performance |
Mark Pearce |
Fri Feb 03, 2012 11:40 am |
Re: C# Performance |
Richard Allbert |
Sat Feb 04, 2012 7:10 pm |
Re: C# Performance |
Lucas Braesch |
Sat Feb 04, 2012 8:31 pm |
Re: C# Performance |
Mark Pearce |
Sat Feb 04, 2012 10:23 pm |
Re: C# Performance |
Mark Pearce |
Sun Feb 05, 2012 12:23 am |
Re: C# Performance |
Lucas Braesch |
Sun Feb 05, 2012 2:57 am |
Re: C# Performance |
Mark Pearce |
Sun Feb 05, 2012 11:40 am |
Re: C# Performance |
Richard Allbert |
Mon Feb 06, 2012 6:29 pm |
Re: C# Performance |
Richard Allbert |
Mon Feb 06, 2012 6:29 pm |
Re: C# Performance |
Richard Allbert |
Mon Feb 06, 2012 6:30 pm |
Re: C# Performance |
Richard Allbert |
Mon Feb 06, 2012 6:45 pm |
Re: C# Performance |
Gary |
Mon Feb 06, 2012 7:00 pm |
Re: C# Performance |
Richard Allbert |
Mon Feb 06, 2012 7:12 pm |
Re: C# Performance |
Sven Schüle |
Mon Feb 06, 2012 10:50 pm |
Re: C# Performance |
Richard Allbert |
Tue Feb 07, 2012 9:52 am |
Re: C# Performance |
Richard Allbert |
Tue Feb 07, 2012 9:53 am |
Re: C# Performance |
Richard Allbert |
Tue Feb 07, 2012 9:53 am |
Re: C# Performance |
Richard Allbert |
Tue Feb 07, 2012 9:54 am |
Re: C# Performance |
Mark Pearce |
Tue Feb 07, 2012 1:59 pm |
Re: C# Performance |
Richard Allbert |
Tue Feb 07, 2012 2:54 pm |
Re: C# Performance |
Richard Allbert |
Tue Feb 07, 2012 3:06 pm |
Re: C# Performance |
Mark Pearce |
Tue Feb 07, 2012 5:17 pm |
Re: C# Performance |
Richard Allbert |
Tue Feb 07, 2012 6:10 pm |
Re: C# Performance |
Richard Allbert |
Tue Feb 07, 2012 6:20 pm |
Re: C# Performance |
Mark Pearce |
Tue Feb 07, 2012 8:02 pm |
Re: C# Performance |
Richard Allbert |
Tue Feb 07, 2012 9:19 pm |
Re: C# Performance |
Mark Pearce |
Tue Feb 07, 2012 10:20 pm |
Re: C# Performance |
Richard Allbert |
Wed Feb 08, 2012 7:47 am |
Re: C# Performance |
Richard Allbert |
Wed Feb 08, 2012 7:57 am |
Re: C# Performance |
Sven Schüle |
Wed Feb 08, 2012 10:09 am |
Re: C# Performance |
Mark Pearce |
Wed Feb 08, 2012 12:16 pm |
Re: C# Performance |
Vincent Diepeveen |
Sat Feb 18, 2012 10:03 pm |
Re: C# Performance |
Mark Pearce |
Wed Feb 08, 2012 9:30 am |
Re: C# Performance |
Richard Allbert |
Wed Feb 08, 2012 12:02 pm |
Re: C# Performance |
Richard Allbert |
Wed Feb 08, 2012 12:34 pm |
Re: C# Performance |
Mark Pearce |
Wed Feb 08, 2012 12:56 pm |
Re: C# Performance |
Richard Allbert |
Wed Feb 08, 2012 1:18 pm |
Re: C# Performance |
Richard Allbert |
Wed Feb 08, 2012 2:30 pm |
Re: C# Performance |
Richard Allbert |
Wed Feb 08, 2012 2:34 pm |
Re: C# Performance |
Mark Pearce |
Wed Feb 08, 2012 3:02 pm |
Re: C# Performance |
Richard Allbert |
Wed Feb 08, 2012 3:27 pm |
Re: C# Performance |
Richard Allbert |
Wed Feb 08, 2012 3:29 pm |
Re: C# Performance |
Richard Allbert |
Wed Feb 08, 2012 3:59 pm |
Re: C# Performance |
Richard Allbert |
Wed Feb 08, 2012 4:04 pm |
Re: C# Performance |
Mark Pearce |
Wed Feb 08, 2012 6:07 pm |
Re: C# Performance |
Richard Allbert |
Thu Feb 09, 2012 10:41 am |
Re: C# Performance |
Mark Pearce |
Thu Feb 09, 2012 1:47 pm |
Re: C# Performance |
Richard Allbert |
Thu Feb 09, 2012 2:56 pm |
Re: C# Performance |
Mark Pearce |
Sat Feb 11, 2012 4:41 pm |
Re: C# Performance |
Richard Allbert |
Sun Feb 12, 2012 8:34 am |
Re: C# Performance |
Lucas Braesch |
Sun Feb 12, 2012 10:52 am |
Re: C# Performance |
Richard Allbert |
Sun Feb 12, 2012 12:26 pm |
Re: C# Performance |
Ron Murawski |
Mon Feb 13, 2012 5:26 am |
Re: C# Performance |
Lucas Braesch |
Mon Feb 13, 2012 5:52 am |
Re: C# Performance |
Richard Allbert |
Mon Feb 13, 2012 6:27 am |
Re: C# Performance |
Ron Murawski |
Tue Feb 14, 2012 6:38 am |
Re: C# Performance |
Lucas Braesch |
Tue Feb 14, 2012 8:22 am |
Re: C# Performance |
Mark Pearce |
Tue Feb 14, 2012 11:30 pm |
Re: C# Performance |
Richard Allbert |
Thu Feb 16, 2012 10:49 am |
Re: C# Performance |
Mark Pearce |
Sat Feb 18, 2012 12:34 pm |
Re: C# Performance |
Richard Allbert |
Mon Feb 20, 2012 9:19 pm |
Re: C# Performance |
Mark Pearce |
Tue Feb 21, 2012 8:33 am |
Re: C# Performance |
Richard Allbert |
Tue Feb 21, 2012 6:37 pm |
Re: C# Performance |
Vincent Diepeveen |
Sat Feb 18, 2012 10:19 pm |
Re: C# Performance |
Mark Pearce |
Sun Feb 12, 2012 2:01 pm |
Re: C# Performance |
Richard Allbert |
Sun Feb 12, 2012 4:40 pm |
Re: C# Performance |
Vincent Diepeveen |
Sat Feb 18, 2012 10:06 pm |
Re: C# Performance |
Mark Pearce |
Sun Feb 19, 2012 1:01 pm |
Re: C# Performance |
Vincent Diepeveen |
Sun Feb 19, 2012 5:25 pm |
Re: C# Performance |
Mark Pearce |
Sun Feb 19, 2012 7:04 pm |
Re: C# Performance |
Vincent Diepeveen |
Sun Feb 19, 2012 9:17 pm |
Re: C# Performance |
Mark Pearce |
Sun Feb 19, 2012 11:33 pm |
Re: C# Performance |
Richard Allbert |
Sun Feb 19, 2012 9:22 pm |
Re: C# Performance |
Vincent Diepeveen |
Sun Feb 19, 2012 9:32 pm |
Re: C# Performance |
Vincent Diepeveen |
Sun Feb 19, 2012 9:37 pm |
Re: C# Performance |
Vincent Diepeveen |
Sun Feb 19, 2012 10:06 pm |
Re: C# Performance |
Lucas Braesch |
Wed Feb 08, 2012 10:56 am |
Re: C# Performance |
Mark Pearce |
Wed Feb 08, 2012 11:30 am |
Re: C# Performance |
Richard Allbert |
Wed Feb 08, 2012 12:04 pm |
Re: C# Performance |
Tony Soares |
Tue Feb 07, 2012 3:47 am |
Re: C# Performance |
Richard Allbert |
Tue Feb 07, 2012 9:55 am |
Re: C# Performance |
Mark Pearce |
Sat Feb 04, 2012 8:37 pm |
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|