mirror of
https://github.com/HChaZZY/Stockfish.git
synced 2025-12-20 09:06:45 +08:00
Syzygy tablebases
Adds support for Syzygy tablebases to Stockfish. See the Readme for information on using the tablebases. Tablebase support can be enabled/disabled at the Makefile level as well, by setting syzygy=yes or syzygy=no. Big/little endian are both supported. No functional change (if Tablebases are not used). Resolves #6
This commit is contained in:
committed by
Gary Linscott
parent
4509eb1342
commit
7caa6cd338
@@ -27,6 +27,10 @@
|
||||
#include "tt.h"
|
||||
#include "uci.h"
|
||||
|
||||
#ifdef SYZYGY
|
||||
#include "syzygy/tbprobe.h"
|
||||
#endif
|
||||
|
||||
using std::string;
|
||||
|
||||
UCI::OptionsMap Options; // Global object
|
||||
@@ -38,6 +42,9 @@ void on_logger(const Option& o) { start_logger(o); }
|
||||
void on_threads(const Option&) { Threads.read_uci_options(); }
|
||||
void on_hash_size(const Option& o) { TT.resize(o); }
|
||||
void on_clear_hash(const Option&) { TT.clear(); }
|
||||
#ifdef SYZYGY
|
||||
void on_tb_path(const Option& o) { Tablebases::init(o); }
|
||||
#endif
|
||||
|
||||
|
||||
/// Our case insensitive less() function as required by UCI protocol
|
||||
@@ -65,6 +72,12 @@ void init(OptionsMap& o) {
|
||||
o["Minimum Thinking Time"] << Option(20, 0, 5000);
|
||||
o["Slow Mover"] << Option(80, 10, 1000);
|
||||
o["UCI_Chess960"] << Option(false);
|
||||
#ifdef SYZYGY
|
||||
o["SyzygyPath"] << Option("<empty>", on_tb_path);
|
||||
o["SyzygyProbeDepth"] << Option(1, 1, 100);
|
||||
o["Syzygy50MoveRule"] << Option(true);
|
||||
o["SyzygyProbeLimit"] << Option(6, 0, 6);
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user