From 977cd9520a70c902c703c6eed177fabb85f8a41e Mon Sep 17 00:00:00 2001 From: Marco Costalba Date: Thu, 13 May 2010 10:06:27 +0200 Subject: [PATCH] Simple implementation of strong YBWC No gain in the worst case of 2 threads, but also no loss and good potential for QUAD or OCTAL machines. After 922 games at 1+0 with 2 threads Mod vs Orig +143 =533 -143 +0 ELO Signed-off-by: Marco Costalba --- src/search.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/search.cpp b/src/search.cpp index 1a01601b..a349fd6c 100644 --- a/src/search.cpp +++ b/src/search.cpp @@ -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 -- 2.39.2