]> git.sesse.net Git - stockfish/blobdiff - src/search.cpp
Let prefetch to be enabled by default on Windows
[stockfish] / src / search.cpp
index 768b0594e559113806f4fa9799c7eeb0bc71824a..a349fd6c7687c33002fbad2b5f6821a4785650b3 100644 (file)
@@ -122,7 +122,7 @@ namespace {
     // RootMove::operator<() is the comparison function used when
     // sorting the moves. A move m1 is considered to be better
     // than a move m2 if it has a higher score, or if the moves
-    // have equal score but m1 has the higher node count.
+    // have equal score but m1 has the higher beta cut-off count.
     bool operator<(const RootMove& m) const {
 
         return score != m.score ? score < m.score : theirBeta <= m.theirBeta;
@@ -234,6 +234,9 @@ namespace {
   // better than the second best move.
   const Value EasyMoveMargin = Value(0x200);
 
+  // Maximum number of moves to try before to split (strong YBWC)
+  const int MaximumSplitMove = 3;
+
   // Last seconds noise filtering (LSN)
   const bool UseLSNFiltering = true;
   const int LSNTime = 4000; // In milliseconds
@@ -1363,6 +1366,7 @@ namespace {
       if (   TM.active_threads() > 1
           && bestValue < beta
           && depth >= MinimumSplitDepth
+          && (PvNode || moveCount > MaximumSplitMove * MinimumSplitDepth / depth)
           && Iteration <= 99
           && TM.available_thread_exists(threadID)
           && !AbortSearch