Author: Ed Schröder
Date: 00:17:10 06/21/00
Go up one level in this thread
On June 20, 2000 at 17:54:29, Larry Griffiths wrote: >On June 20, 2000 at 12:18:06, Ralf Elvsén wrote: > >>I'm asking about things I don't have much personal experience from >>so forgive me if this is a stupid question. With BB, as I understand >>it, one usually have a lot of precomputed BB-arrays, like bishopsMoves[square], >>maybe blocks[from][to] or the rotated BB-stuff. Is this causing problems >>for the cache? How much precomputed stuff is needed in 0x88 compared to this? >> >>Ralf > >Ralf, > >I did experience slowdowns in my program due the precomputed bitboard arrays. These large pre-computed bit-board tables you access so many times have a negative effect on the PC's data-cache. So maybe the code you are writing in theory looks (and should be) faster but in practice it is not. Same story for the hash table lookup using multiple slots. Maybe 8 slots gives the best performance in NPS but that doesn't automatically mean it will be faster in time because these 8 tries are eating (ruining) the data cache. I once rewrote a time consuming part of EVAL storing all possible results in a pre-compiled table. 2-3 table lookups replaced a large piece of code. I estimated the gain in speed on about 12-14%. In practice it was only 1% faster. Reason was blowing up the data cache. Isn't chess programming just great? Ed >You can go as crazy as you like creating all sorts of wonderful neat-o bitboard >arrays consuming several megabytes of storage. Been there, done that, pruned >the bitboard stuff back :) > >I also pre-computed RookMoves (file and rank) using bitboards (WITHOUT USING A >LOOP BY THE WAY). > >Larry.
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.