Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Hashing question

Author: Miguel A. Ballicora

Date: 06:25:41 12/31/01

Go up one level in this thread


On December 31, 2001 at 09:18:54, Matthias Gemuh wrote:

>On December 31, 2001 at 06:56:28, Michel Langeveld wrote:
>
>>I hash the movecolor in the hashtable.
>>So I have one table with all of them.
>>
>>void doWhiteMove(moveType m)
>>{
>>
>>   .... blablabla...
>>
>>   //change color
>>   XOR(p.dynHash, moveColorHash[0]);
>>   p.moveColor = BLACK;
>>   XOR(p.dynHash, moveColorHash[1]);
>>}
>>
>>What is better.. I don't know my program is only 2 months old.
>>
>>I think the inverting of all bits for black like Crafty does is maybe a little
>>faster then my method.
>>
>>In my method if I search 5 ply for example White - Black - White - Black  -
>>White and a lot of white to moves are in the hashtable I have them spread
>>through all the table at random.
>>
>>And maybe the disadvantage of that is that spreading all hashkeys can give a
>>performance penalty with page switches. Why not build both and keep what suits
>>you best.
>>
>>Michel
>
>
>
>I think mixing black and white is a bit tricky if you want to
>guarantee that black shall NEVER try to play a white move, or vice versa.

That's an illegal move as any other that you might find when you have
a (rare) collision. So, you deal with that in the same way, there is no
difference.

Regards,
Miguel


>
>Matt.



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.