From 673841301b0cc6ed78c4db3e6ec2a0b9a010c8cb Mon Sep 17 00:00:00 2001 From: Joseph Ellis Date: Wed, 13 Oct 2021 11:10:50 -0500 Subject: [PATCH] Simplify multi-cut condition Now that the multi-cut condition is safer, we can avoid the cost of the sub-search. STC: https://tests.stockfishchess.org/tests/view/6165fd9283dd501a05b0b2fe LLR: 2.93 (-2.94,2.94) <-2.50,0.50> Total: 18648 W: 4745 L: 4600 D: 9303 Ptnml(0-2): 47, 2111, 4887, 2208, 71 LTC: https://tests.stockfishchess.org/tests/view/616629ea83dd501a05b0b320 LLR: 2.96 (-2.94,2.94) <-2.50,0.50> Total: 41704 W: 10407 L: 10302 D: 20995 Ptnml(0-2): 35, 4425, 11823, 4538, 31 closes https://github.com/official-stockfish/Stockfish/pull/3738 Bench: 5905086 --- src/search.cpp | 13 ++----------- 1 file changed, 2 insertions(+), 11 deletions(-) diff --git a/src/search.cpp b/src/search.cpp index 73fc8a55..28049e87 100644 --- a/src/search.cpp +++ b/src/search.cpp @@ -1123,18 +1123,9 @@ moves_loop: // When in check, search starts here else if (singularBeta >= beta) return singularBeta; - // If the eval of ttMove is greater than beta we try also if there is another - // move that pushes it over beta, if so the position also has probably multiple - // moves giving fail highs. We will then reduce the ttMove (negative extension). + // If the eval of ttMove is greater than beta, we reduce it (negative extension) else if (ttValue >= beta) - { - ss->excludedMove = move; - value = search(pos, ss, beta - 1, beta, (depth + 3) / 2, cutNode); - ss->excludedMove = MOVE_NONE; - - if (value >= beta) - extension = -2; - } + extension = -2; } // Capture extensions for PvNodes and cutNodes -- 2.39.2