Author: Dan Homan
Date: 11:23:02 01/12/98
Go up one level in this thread
This discussion has made me wonder if my pawn hash table is
really effective. If it is not, I probably have a bug either
in my understanding or in my implementation. To check, I
thought I would output the search results from my program on
WAC 003.
Some notes first:
hash table size: 262144 entries, 6291456 bytes
pawn hash table size: 65536 entries, 1048576 bytes
My pawn hash table also uses the position of the king
(as well as the pawns) to compute the pawn hash code.
Test Position: WAC 003
+---+---+---+---+---+---+---+---+
8 | | | | | | *R| *K| | White to move
+---+---+---+---+---+---+---+---+
7 | | *P| *P| *B| | | | *P| castle: -
+---+---+---+---+---+---+---+---+
6 | *P| | *P| *B| | | | |
+---+---+---+---+---+---+---+---+
5 | | | | | | | *Q| |
+---+---+---+---+---+---+---+---+
4 | | | | P | | *P| | *R| fifty: 0
+---+---+---+---+---+---+---+---+
3 | | | P | | R | | | P |
+---+---+---+---+---+---+---+---+
2 | P | P | | B | Q | | P | |
+---+---+---+---+---+---+---+---+
1 | | | | | | R | K | N |
+---+---+---+---+---+---+---+---+
a b c d e f g h
White to Move Book Move: Rg3;
Press 's' to search, 'n' for the next position, 'q' to exit: s
Please enter a search time (in seconds): 30
3. 154 0 1300 e3g3 g5g3 h1g3
4. 313 0 5297 e3g3 d7g4 g3g4
5. 313 0 10408 e3g3 d7g4 g3g4
6. 313 2 53982 e3g3 d7g4 g3g4
7. 313 5 174534 e3g3 d7g4 g3g4
8. 313 20 735301 e3g3 d7g4 g3g4 h4g4 e2e6 g8h8
h3g4 g5f6 f1e1 f4f3
node_count = 885911 quiescent nodes = 82048 eval_count = 183571
hash hits = 74864 hash moves = 9095 pawn hash hits = 173696
node_rate = 36912 null cutoffs = 167276 extensions = 15099
Searched Move: Re3-g3 Book Move: Rg3
So my pawn hash is 95% effective. This is an average to good
position. In positions where the king can move a lot, the
percentage can be as low as 80%. Is hashing in the king
position a good idea? I do it to keep avoid having to
recalculate some king safety infomation.
(Note: Quiescent nodes seems low because I don't count the
entry into the quiescent search as a quiescent node.
Such a node (usually at depth = 0) is counted as a
full width node only. )
- Dan
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.