Author: Robert Hyatt
Date: 06:08:40 02/21/02
Go up one level in this thread
On February 20, 2002 at 19:28:42, Vincent Diepeveen wrote: >On February 20, 2002 at 16:10:01, Frank Phillips wrote: > >>On February 20, 2002 at 12:48:06, Steve Maughan wrote: >> >>>Thanks for the help everyone! >>> >>>I've implemented the idea I outlined and this has fixed the problem. However >>>effectively I ignore possition where I cannot add a hash entry without >>>overwriting another. This means that there is currently the possibility of a >>>draw not being detected. I'll probably test a rehashing mechanism. >>> >>>Regards, >>> >>>Steve >> >>Just stick the entry in the next available slot (that has a hash signature of >>zero). The debug tests I did never showed more than a few re-hashes - once it >>was working properly. >> >>I changed to this method from a simple array list following Bruce's description, >>because it seemed so elegant with the possibility of speeding up detection in >>the endgame - when the list approach might have many entries to check. >> >>After falling for the obvious trap of not always removing an entry when exiting >>ABsearch() early, it seems to work fine. >> >>I noticed no significant speed loss (or speed up) in the short middle game test >>I use. >> >>Frank > >You measured pretty bad then depending upon hashtable size. An array >that gets read within 1 cache line and is already within L1 or L2 >is kicking the hell out of this hashtable approach. A cache line only holds 32 bytes. The repetition list array is much longer than this...
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.