Increase max hash size to 16GB
authorMarco Costalba <mcostalba@gmail.com>
Sat, 18 Jan 2014 17:19:16 +0000 (18:19 +0100)
committerMarco Costalba <mcostalba@gmail.com>
Sat, 18 Jan 2014 17:22:32 +0000 (18:22 +0100)
TCEC season 3, which is due to start in a few weeks, just
had its server upgraded to 64GB RAM and will therefore allow
16GB hash to be used per engine.

This is almost the upper limit without changing the
type of size and hashMask. After this we need to
move to uint64_t instead of uint32_t.

No functional change.

src/tt.cpp
src/tt.h
src/ucioption.cpp

index c1c1521331d40c223af73931ed001f9cd98c13d6..24e94c8008bd691c4045719f065359dd1ff3ee5a 100644 (file)
@@ -30,7 +30,7 @@ TranspositionTable TT; // Our global transposition table
 /// measured in megabytes. Transposition table consists of a power of 2 number
 /// of clusters and each cluster consists of ClusterSize number of TTEntry.
 
-void TranspositionTable::set_size(size_t mbSize) {
+void TranspositionTable::set_size(uint64_t mbSize) {
 
   assert(msb((mbSize << 20) / sizeof(TTEntry)) < 32);
 
index 7e580fec313d7b580f075fe927b22b015360f15e..a926d4ada6887b9d63ae9a77a91ff787d00b1cdd 100644 (file)
--- a/src/tt.h
+++ b/src/tt.h
@@ -81,7 +81,7 @@ public:
   const TTEntry* probe(const Key key) const;
   TTEntry* first_entry(const Key key) const;
   void refresh(const TTEntry* tte) const;
-  void set_size(size_t mbSize);
+  void set_size(uint64_t mbSize);
   void clear();
   void store(const Key key, Value v, Bound type, Depth d, Move m, Value statV);
 
index 0ef892bd9febfe9401eaa4b90770fb57614a9055..417765a54b6c3a487803df7481752cf286771876 100644 (file)
@@ -73,7 +73,7 @@ void init(OptionsMap& o) {
   o["Max Threads per Split Point"] = Option(5, 4,  8, on_threads);
   o["Threads"]                     = Option(1, 1, MAX_THREADS, on_threads);
   o["Idle Threads Sleep"]          = Option(true);
-  o["Hash"]                        = Option(32, 1, 8192, on_hash_size);
+  o["Hash"]                        = Option(32, 1, 16384, on_hash_size);
   o["Clear Hash"]                  = Option(on_clear_hash);
   o["Ponder"]                      = Option(true);
   o["OwnBook"]                     = Option(false);