Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Perft(10) verified

Author: Albert Bertilsson

Date: 08:20:57 12/11/03

Go up one level in this thread


On December 10, 2003 at 10:48:22, Zach Wegner wrote:

>On December 10, 2003 at 07:10:37, Albert Bertilsson wrote:
>
>>On the 2GHz P4 (not the fastest machine, but the one I use right now) Sharper
>>get 18Mnps. What makes the numbers look so good is of course the usage of hash
>>tables, without them it would be a whole diffrent story.
>>
>>/Regards Albert
>
>I've always wondered how exactly to implement a perft hash table. I was thinking
>a large struct with several node counts:
>
>typedef struct
>{
>UINT64 hashkey;
>unsigned int perft3;
>unsigned int perft4;
>unsigned int perft5;
>unsigned int perft6;
>unsigned int perft7;
>unsigned int perft8;
>/*and so on...*/
>} PERFT_HASH;
>
>with perft 1 and 2 removed because they should be very fast. What does yours
>look like?
>
>Regards,
>Zach

Mine look like this:
struct PerftHashItem
{
	SuperZobrist key;
	UInt64 nodes;
	Int8 depth;
};
SuperZobrist key is a 128 bit number.

I don't try hashing for ply 1 and 2 because it would require a too large hash
table to ever be of any use. When writing I overwrite when the new item has a
higher node count than the previous.

/Regards Albert



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.