Author: Peter Fendrich
Date: 11:33:05 09/26/04
Go up one level in this thread
On September 26, 2004 at 13:51:19, Zach Wegner wrote: >In my program, I allocate the hash tables with calloc(), which initializes >everything to zero. Recently I've been having a problem where the program >crashes on somewhat longer searches. After debugging, it turned out to be the >pawn hashkey is equal to 0, and the corresponding entry had not been written >into yet, making the program think it was a valid hit. The pawn data is all set >to zero and causes a seg fault later on. What's the best way to solve this? >Better zobrist numbers/ignore it? A "used" bit? > >Thanks, >Zach I initialize the depth (draft) with -1. It takes essentially no time. In the beginning I have, if depth == -1 then this is an empty entry. You could also use zero as initial value and test against zero. It would miss all keys==0 but that wont hurt your programs strength... Don't test if depth==0, that's not a good idea. If you store an alternative key or part of the full 64-bit key in the hash-entry, test against that instead. /Peter
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.