Author: Robert Hyatt
Date: 20:46:43 09/01/03
Go up one level in this thread
On August 29, 2003 at 19:45:33, Vincent Diepeveen wrote: >On August 29, 2003 at 18:26:46, Dave Gomboc wrote: > >>On August 29, 2003 at 08:53:50, Robert Hyatt wrote: >> >>>It isn't big enough to hold even the stuff I need to generate moves. I have >>>multiple arrays of 64 X 256 X 8bytes, that I use repeatedly. One of those >>>is enough to zap L1, although I don't need the entire table at one shot. But >>>I do need parts of four of those, and that is just for starters... >> >>Well, it's either a software implementation issue or a software design issue, >>then. Your call. :-) Blowing L1 cache just to generate moves seems >>unreasonable. >> >>Dave > >Right all those bitboard nonsense. Just take my generator. 2 lookups to L2 cache >*worst case* and all is in L1 cache, and that for each piece. > >Then each additional move generation eats 1 clock for generation and 1 clock for >loop (depending upon processor). If loop ends it is possible that you might get >a branch misprediction ONCE, but that's for each piece the case. Not for each >move. > >My code is GENERAL. Like one general loop both for black and white and for Q,R,B >and some other loop for King and Knight also both colors of course. > >Now compare that with the bad programming example in crafty. O yeah, it's hell >slow too :) > >Best regards, >Vincent What is _really_ bad is how "great" you do against this "hell slow" program. That ought to get you to thinking... Or not...
This page took 0 seconds to execute
Last modified: Thu, 15 Apr 21 08:11:13 -0700
Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.