Shrink the hash table of tablebases back to 4096 entries
authorSteinar H. Gunderson <sgunderson@bigfoot.com>
Wed, 29 Aug 2018 00:00:14 +0000 (02:00 +0200)
committerStéphane Nicolet <cassio@free.fr>
Wed, 29 Aug 2018 00:00:20 +0000 (02:00 +0200)
commit166bf90e4172b77aa0c420ed271fa55e92301a70
tree6dcdceaf859ce6b5857d6dff7ed370450c9140fd
parent4aa091cf4486b0f03d0026eee5a1b48c04dbad8e
Shrink the hash table of tablebases back to 4096 entries

There is no need to make this as large as 65536 just for the sake of the
single 7-man tablebase that happens to have the key 0xf9247fff. Idea for the
fix by Ronald de Man, who suggested simply to allow more buckets past the end.

We also implement Robin Hood hashing for the hash table, which takes the worst
-case search for full 7-man tablebases down from 68 to 11 probes (Also takes
the average probe length from 2.06 to 2.05). For a table with 8K entries, the
corresponding numbers would be worst-case from 9 to 4, with average from 1.30
to 1.29.

https://github.com/official-stockfish/Stockfish/pull/1747

No functional change
Readme.md
src/syzygy/tbprobe.cpp