Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Programming question: why clearing the hash tables?

Author: Robert Hyatt

Date: 18:06:57 08/24/00

Go up one level in this thread


On August 24, 2000 at 18:49:16, José Carlos wrote:

>  In Averno, I never clear the hash tables. I store the total material (sum of
>both sides) with the position, flags and move. So, when I'm going to store a new
>posotion, I check if the material stored is bigger than the material at the root
>of this search. In that case, I replace always. Otherwise, if the other tests
>point me to store the position, I save the actual material (in that node of the
>tree) with the position.
>  I know this could not be accurate when promoting occurs, but works fine most
>of the time.
>  Just curious, why do you guys clear the hash tables and when? I read here some
>days ago that Christophe clears before every search in Tiger, but is not going
>to do it in further versions. Can you reveal your secret? :)
>
>  Thanks in advance.
>
>  José C.

The only kind of program that needs to clear the hash table between searches is
a program that somehow alters the evaluation move to move, like a root processor
for example.  IE if you suddenly change your king safety scores because you went
past move 30, for example, then identical positions, before move 30 and after
move 30, would have different scores, and the hash table would have the wrong
(old) score.

There are far simpler ways to handle this than clearing the hash table, however.
And depending on what is cleared, it can really adversely impact the search as
no move ordering is carried from search to search, which is bad.




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.