Author: Steven Edwards
Date: 13:07:42 09/13/03
Go up one level in this thread
On September 13, 2003 at 15:14:54, Tom Likens wrote: >On September 13, 2003 at 13:39:22, Anthony Cozzie wrote: >I'm guessing you use a 64-bit hash key and steal the lower (or upper) N bits >for the address into your hash table. If the previous assumption is true >then you have N redundant bits that you could steal from the *storage* of >the hash key without any loss of accuracy. For example, if you use the >lower 16-bits then when you save the hash key into your table only save the >upper 48 bits. And when you compare only compare the upper 48 bits. Of >course your main hash key is still 64-bits. This should free up the >bits you need. This is an old trick and it works well; I used a version of it in my old program Spector that stored only the upper 32 bits of the 64 bit hash key with the lower 32 bits used to generate the transposition table entry pointer. However, schemes like this can interfere with any set associative method in use that enables multiple probes for a given key. Problems can be avoided by generating secondary addresses in a way dependent only upon the bits in the hash key that are stored in each table entry.
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.