Moderator: Andres Valverde
Reinhard Scharnagl wrote:Hi Uri,your method would be save if you would be stepping back only one step instead of two (in the case you would use Nullmove prunings).The way that I use is a safe way to detect repetition unless different positions get the same 64 bit key in the hash.
Reinhard.
could you please explain, I still cannot see this.For efficiency however, the prefered way is then to use a second (small) hashtable since there will be only a few entries in it anyway
this is strange to me. In Smirf locking has the meaning, that the matching cache entry could neither be changed nor deleted. What else could the meaning of locking be?... because your locked entry could have been moved to another level during the search.
As long as you don't plan on using a cluster (no shared hashtable),
Tony van Roon-Werten wrote:Maybe I didn't understand the multi associative...
Normally a hashtable is multilevel. It means that for checking, locking and unlocking an entry you need to check multiple levels, because your locked entry could have been moved to another level during the search.
This is kind of an overkill for repetition detection, where a single level and smaller (ie 50 K entries ) table should suffice.
Tony
I just use a 2 level hashtable
Reinhard Scharnagl wrote:Hi again Tony,As long as you don't plan on using a cluster (no shared hashtable),
it seems as if I would have big problems in understanding your items. Here I do not know which parts of the program should be excluded from sharing the TT.
Probably I have a different understanding of a transposition table. I have two kinds of entries within one uniqe cache. One level independent entry for the position representing simultaneously the position itself and the maximum level of its evaluation, and additionally secondary entries representing position evaluations of smaller levels. All those entries are handled equally except of the ability to be locked.
Reinhard.
Reinhard Scharnagl wrote:Hi Tony,I just use a 2 level hashtable
I do not understand the different usage of the word level here. I use a 4-fold associative cache, but that has nothing to do with the level depending evaluation information of stored nodes.
Reinhard.
Tony: the generally used word is ...
Uri: I guess that you mean to the same(except using 4 entries) by the word 4-fold associative cache.
Return to Programming and Technical Discussions
Users browsing this forum: No registered users and 4 guests