Author: Gerd Isenberg
Date: 15:47:35 09/16/02
Go up one level in this thread
<snip> >At least it is now possible to make a tiny (few kB) bitboard engine, I'm sure >that will come in handy when the chips reach 10-20 GHz. >Maybe MMX isn't fast enough today but who knows with hyperthreading and future >technologies how much such a thing can be tuned. >The Hammer should be faster at this than MMX, so perhaps it could be a winner >already in a few months, what do you think? > I hope so, how many integer pipes will hammer have, eight? :-) >>One possible improvement for the single square getters could be the use of four >>routine variations with less fill iterations (4..7). Two function pointer arrays >>indexed by square index, with respect of the maximal lenght of a ray in each >>direction for straights or diagonals. > >No, tables, pointers and conditionals are forbidden, only pure bitwise >operations. We never know if future chips may have some bad pipeline thingy >mispridiction problem yada yada. > Yes, may be, specially if you inline them. But otherwise an indirect function call via a 64 pointer array is not as bad. Specially with diagonals, it may save a few cycles. The diagonal code is shlightly larger than the straight one, and there are a lot of squares happy with less than seven iterations: 7 6 5 4 4 5 6 7 6 5 4 4 4 4 5 6 5 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 5 6 5 4 4 4 4 5 6 7 6 5 4 4 5 6 7 Cheers, BitBoards forever! Gerd >>An interesting feature of this routines may be looking for all squares >>attackable after all possible moves by the sliders. You only need two >>consecutive calls. > >Yes, that is true, so you can get rid of your 'taxi-distance' table too, just >count the iterations here! > >-S. > >>Cheers, >>Gerd
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.