Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Ok, New Idea

Author: Tony Werten

Date: 22:59:05 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?

No, it's what most people do. OTOH if you use seperate numbers, you could create
better numbers for the pawnhash. Don't know the math but you might be able to
produce numbers that can be proven to never give a collision.
I doubt wether it is usefull though.

Tony

>
>William



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.