Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Fixed

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.01 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.