Flag critical search tree in hash table
authorMJZ1977 <37274752+MJZ1977@users.noreply.github.com>
Wed, 9 Jan 2019 14:05:28 +0000 (15:05 +0100)
committerSt├ęphane Nicolet <stephanenicoletsuriphone@gmail.com>
Wed, 9 Jan 2019 14:05:33 +0000 (15:05 +0100)
commit70880b8e247c94d0a16a2fb50b41827726e00742
treef5791b280dbaf42f932dc1244a44153053291d4e
parentf69106f7bb82f97ba07fb06a31395039d08af9f4
Flag critical search tree in hash table

Introducing new concept, saving principal lines into the transposition table
to generate a "critical search tree" which we can reuse later for intelligent
pruning/extension decisions.

For instance in this patch we just reduce reduction for these lines. But a lot
of other ideas are possible.

To go further : tune some parameters, how to add or remove lines from the
critical search tree, how to use these lines in search choices, etc.

STC :
LLR: 2.94 (-2.94,2.94) [0.50,4.50]
Total: 59761 W: 13321 L: 12863 D: 33577 +2.23 ELO
http://tests.stockfishchess.org/tests/view/5c34da5d0ebc596a450c53d3

LTC :
LLR: 2.96 (-2.94,2.94) [0.00,3.50]
Total: 26826 W: 4439 L: 4191 D: 18196 +2.9 ELO
http://tests.stockfishchess.org/tests/view/5c35ceb00ebc596a450c65b2

Special thanks to Miguel Lahoz for his help in transposition table in/out.

Bench: 3399866
src/search.cpp
src/tt.cpp
src/tt.h
tests/instrumented.sh