Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Ok, New Idea

Author: Robert Hyatt

Date: 20:51:48 12/08/01

Go up one level in this thread


On December 08, 2001 at 14:41:23, William Bryant wrote:

>On December 07, 2001 at 23:52:37, Robert Hyatt wrote:
>
>>On December 07, 2001 at 18:13:18, William Bryant wrote:
>>
>>>
>>>>I was seeing an error 400K-500K nodes, on my PIII/750 laptop, which is about
>>>>one error every 2 to 4 seconds.  On my quad (I didn't run the test there as it
>>>>was playing on ICC) this would turn into an error every second or less, which
>>>>is not acceptable.  Some positions produced _many_ errors per second, when there
>>>>were fewer pieces so that more pawn moves were being searched...
>>>
>>>I believe the thread was discussing the frequency of errors using a 32 pawn hash
>>>key which in previous threads you said that, after testing, produced no
>>>significant degree of collisions or errors.
>>
>>
>>This was a mistake on my part.  My testing (no errors) was actually done several
>>times, but prior to my conversion to 32 bit signatures for pawn hashing.  When I
>>tested this at David's urging, the number of collisions was ridiculous...  I am
>>now using 64 bits again.
>>
>>
>>
>>
>>>
>>>If I read the above correctly, this implies that it does produce an unacceptable
>>>level of errors?
>>>
>>>Or is this above error rate discussing the main hash table using a 32 bit key?
>>>
>>
>>pawns only.   as explained above.
>>
>>
>>
>>>Would you please clarify.
>>>Thank you.
>>>
>>>William
>
>OK, If the pawn hash table also hash to be indexed off of 64 bit zobrist
>numbers,
>but this is a completely separate table than the main hash table, then can a
>portion of the zobrist numbers used to create the main hash key be reused for
>creating the pawn hash key?
>
>example:
>
>instead of --
>
>UInt64 ZTable[2][6][64]; 	//the integers for the main table
>UInt64 PZTable[2][64];	//the integers for the pawn table
>					//using an additional 1K of memory (or catch)
>
>use--
>
>UInt64 ZTable[2][6][64]; 	//the integers for the main table
>UInt64* PZTable = ZTable;	//and reuse the numbers to save in catch
>
>Would this create problems?
>
>William


It is late, and I may have misunderstood what you asked, but for me, I use
the _same_ random numbers to update the normal (full) hash signature, _and_
the pawn hash signature.




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.