Author: Tony Werten
Date: 23:46:33 04/12/00
Go up one level in this thread
On April 12, 2000 at 16:05:33, Tom Kerrigan wrote: >On April 12, 2000 at 14:03:21, KarinsDad wrote: > >>On April 12, 2000 at 12:08:37, Tom Kerrigan wrote: >> >>[snip] >>> >>>I don't care for this method because you have to go through your entire hash >>>table and set these bits. That takes about as long as clearing the hash table, >>>which makes it unreasonable to have large hash tables for fast games. >>> >>>What you can do is take any leftover bits in your hash entries and use them for >>>a counter. Every time you start a new search, you increment the counter. If you >>>find an entry with an old counter value, you can toss it. >>> >>>-Tom >> >>I like it. What size counter do you use? 2 bytes? 4 bytes? How large does your >>hash table get? >> >>KarinsDad :) > >I have a byte in my hash table entries to indicate what type of score the entry >is (alpha, beta, pv). That only takes 2 bits, so i use the remaining 6 bits for >a counter. So the counter can go to 64. Some small questions. How do you manage this pv score of you find a new pv ? Do you go through your old pv and remove the pv bit ? > >I figure if an entry is lucky enough to avoid being clobbered for 64 searches, >it deserves to stick around for one more. :) I though about this. Normally this would go ok. But what about search 65 ? Your counter gets set back to zero, which is always smaller than the entries in your table, so you never get permission to store the new entry. > >I usually set my general hash table size to 16MB. I have 128MB RAM, but I like >to be able to just fire up my program with no swapping. I have no idea how fast On windows 98 with 128MB, I use 64 Mb for hashtables without any swapping. Tony >I "burn" entries. Maybe I'll test that later on. > >-Tom
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.