Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: How to test hashtable implementation?

Author: Robert Hyatt

Date: 07:16:01 07/23/01

Go up one level in this thread


On July 23, 2001 at 08:33:49, Martin Giepmans wrote:

>When I tested my Program SpiderGirl I found indeed a lot of "odball behaviour",
>as you call it. With slightly different setups (a little bit more pruning or
>a little bit less) I got huge differences in performance, ranging
>from 0.1 sec (depth 18) to several minutes (depth 32, if I remember correctly).
>It reminds me of the chaos-butterfly in London that causes a storm in Tokyo.
>Is there a better way to test hashtable-implementation? Butterflies are Fine of
>course, but ...


I don't know of a simple, scientific way to test hashing.  Fine 70 is a good
one as you want to look for odd things.  IE at something around depth 18 or
beyond, up to depth 26, you should find winning a pawn.  You should not see
any drops in the score nor different moves, once you have initially found that
Kb1 wins a pawn.  You should see the score jump at least once or twice as
you reach depth 36 or beyond, and you might see it actually reach +9 or so if
you search long enough.  You just want to be sure it doesn't go up, down, you
change from one move to another over and over, etc.  IE most programs will
probably like Kb2 (more centralization) until they stumble onto the fact that
Kb1 wins a pawn.  Once they find that, they should stick with Kb1 forever as
any other king move can not win that pawn, ever...

If you see the above behavior, you are doing fine.  If hashing is broken, you
will notice the problem pretty quickly.

IE on a single cpu, 700mhz, crafty finds Kb1 at depth 18,
.05 seconds.  Depth 20 takes .08 to complete,  depth 25 takes .23 seconds,
depth 30 takes 3.78 seconds, depth 35 takes 8.32, etc...



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.