Author: Robert Hyatt
Date: 18:44:37 03/29/00
Go up one level in this thread
On March 29, 2000 at 18:58:14, James Flanagan wrote: >On March 29, 2000 at 10:41:00, Tom Kerrigan wrote: > >>On March 29, 2000 at 09:34:11, James Flanagan wrote: >> >>>Dann Corbit recently distributed a set of "difficult" positions, asking people >>>to try solving them with different computer programs. I attacked the second >>>position with a modified version of Crafty 17.10, which found the draw after >>>about 18 hours on my AMD K6-2. The answer came around ply 16. There were 52 (!) >>>legal moves in the root position. >>> >>>My 48M hash table was clearly inadequate under these circumstances. Does >> >>I'm interested in how you came to this conclusion. >> >>-Tom > >Two people asked the same question, so I guess I need to explain my reasoning: > >The hash table stores information about positions that have already been >evaluated by the program. Each position requires several words of RAM to >describe its characteristics and evaluation score. Assume that each position >takes 48 bytes of memory. Then the storage capacity of a 48Mb hashtable is > >48,000,000 / 48 = 1,000,000 positions > >Crafty, on my clunky old AMD K6-2, visits around 140,000 nodes per second. If >10% of these positions are stored to the hash table, then 1,000,000 hash table >entries are filled in > >1,000,000 / (140,000 x .1) = 70 seconds. > >However, my run was 18 hours long. That's why I was concerned about hash table >size. > >Although I was using Crafty, the Fritz user's guide gives the same method to >calculate Fritz's hash table capacity. Bob Hyatt, Crafty's author, recently >wrote that he uses a 48M hash for normal games, but goes up to 192M for long >games (but I don't think he was considering 18 hours per move). > >When you run out of hashtable memory, old data is dumped to make way for the >new. If you revisit a position that has been dumped, it has to be reevaluated >from scratch. Nothing terrible happens -- your program just runs a little >slower. > >This raises an interesting question: how hard would it be to output these hash >table statistics? > >-Jim Flanagan First, a hash entry (in crafty) is 16 bytes... so you are off by a factor of 3. Second, I don't hash any q-search nodes at all, so at least 1/2 of the tree is not hashed and probably more. 48m is definitely small for 18 hours, although it won't result in the search being 10x slower or anything that significant... It will easily slow it down by a factor of 2-3 however, maybe more...
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.