Author: Sune Fischer
Date: 10:34:56 01/19/04
Go up one level in this thread
On January 19, 2004 at 12:11:30, Tord Romstad wrote: >On January 19, 2004 at 11:43:21, Sune Fischer wrote: > >>A while back I ran lots of test positions and compared the PVs between the two >>methods. >>What I generally saw was that they were identical, only the hash extracted PV >>usually were a few moves longer. > >I extract all my PVs from the hash table. I am not sure I agree with >your observation that the hash extracted PVs are usually longer, but I >agree that they are *sometimes* longer. It makes some sense though, if Crafty gets a hash hit on a PV node the PV will get cut right there, while ours will have no problems being extracted into the part that created the cutoff. The only way our PV's can become shorter is if a needed entry actually gets overwritten, the probability of that is not so great in a short search/big hash. Unfortunately it is definitely going to happen in a long search. >Today Leo helped me discover an obscure bug related to this. The >maximum search depth in Gothmog is 60 plies, and my PV[] array has >60 entries. The fact that extracting the PV from the hash table >could cause a PV of length greater than 60 plies had never passed >my mind until Leo sent me a debug file from a game where Gothmog >crashed directly after printing out a 61-move PV. :-) I helped me to fix a few bugs too, some hash bugs are seen instantly this way :) I have a PV class now for extracting the PV, my pv.add(move) does a bounds check before adding the move. This is one place where bounds checking is called for, doing it only at the root is 'free' anyway :) -S. >Tord
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.