Author: Eric Oldre
Date: 13:00:43 07/11/04
Go up one level in this thread
On July 11, 2004 at 15:36:54, Dieter Buerssner wrote: >On July 11, 2004 at 14:35:50, Eric Oldre wrote: > >>a) did I just not let it search deep enough? >>b) does the fact that it took 3:51 to reach depth 21 indictate a issue with my >>tranposition table? > >Yes. I tried this pos with only 1000 hash entries. It was solved in no time. >Independent of the hashing scheme you are using (say depth preferred or always >replace or more sophisticated), your hashing probably does not work well. I >assume, you have null move disabled. I did not originally have null move disabled, but it should be trying null moves on this position due to the lack of material, just to be safe i tried compiling with no null move. but i got the same results. > >>it was running at 1,200,000 nodes/sec. > >From this speed, I guess you are generating the hash keys incrementally (in your >makemove/undomove?). A first start might be to check if they are correct, by >comparing the incremental keys with ones you generate from start. You might also >want to describe your hash struct, how you store/probe, when you cutoff, ... > yes i am updating the hash keys incrementally. I'll add some code to also generate them from scratch from a given position and compare to the incrementally generated one. I'll report some results when i have them. >>if there is a issue with my transposition table, could it be due to not having >>random enough keys? here is the code i'm using to generate the numbers. >> >>U64 rand64(){ >> U64 retval = 0; >> retval = (retval <<15) | rand(); >> retval = (retval <<15) | rand(); >> retval = (retval <<15) | rand(); >> retval = (retval <<15) | rand(); >> retval = (retval <<15) | rand(); >> return retval; >>}; > >This will work with many implementations, and will be very poor with other >implementations (all those, which have a RAND_MAX >= 2^15-1). A fast fix is to >use xor instead of or, to paste together the rand() returns. I prefer to use my >own pseudo random number generator. Not necessarily, because I expect better >results. It makes debugging easier, when you compare runs in different >environments (the C-library can have different implementations of rand(), and >then you cannot reproduce node counts, search trees, ...) I'm using MSVS.Net. I've also tried xor'ing the results from 5 calls to this function together, to see if that might help any problems i'm having, hasn't made a difference though. Thanks for the ideas Dieter! Eric > >Regards, >Dieter
This page took 0.01 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.