From cef551092c7d4ca4d9a2d6402f412332b1f3e88a Mon Sep 17 00:00:00 2001 From: aronpetkovski Date: Sun, 27 Jul 2025 22:39:12 +0200 Subject: [PATCH] Only do IIR in minimally reduced nodes Passed STC LLR: 2.93 (-2.94,2.94) <0.00,2.00> Total: 164256 W: 42799 L: 42299 D: 79158 Ptnml(0-2): 451, 19305, 42087, 19863, 422 https://tests.stockfishchess.org/tests/view/68868e9b7b562f5f7b731615 Passed LTC LLR: 2.94 (-2.94,2.94) <0.50,2.50> Total: 279396 W: 71871 L: 71062 D: 136463 Ptnml(0-2): 126, 30117, 78404, 30924, 127 https://tests.stockfishchess.org/tests/view/6886a4977b562f5f7b731663 closes https://github.com/official-stockfish/Stockfish/pull/6196 Bench: 3490609 --- src/search.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/search.cpp b/src/search.cpp index e3044bf6a..9775e46b1 100644 --- a/src/search.cpp +++ b/src/search.cpp @@ -813,7 +813,8 @@ Value Search::Worker::search( { int bonus = std::clamp(-10 * int((ss - 1)->staticEval + ss->staticEval), -1979, 1561) + 630; mainHistory[~us][((ss - 1)->currentMove).from_to()] << bonus * 935 / 1024; - if (!ttHit && type_of(pos.piece_on(prevSq)) != PAWN && ((ss - 1)->currentMove).type_of() != PROMOTION) + if (!ttHit && type_of(pos.piece_on(prevSq)) != PAWN + && ((ss - 1)->currentMove).type_of() != PROMOTION) pawnHistory[pawn_structure_index(pos)][pos.piece_on(prevSq)][prevSq] << bonus * 1428 / 1024; } @@ -900,7 +901,7 @@ Value Search::Worker::search( // Step 10. Internal iterative reductions // At sufficient depth, reduce depth for PV/Cut nodes without a TTMove. // (*Scaler) Especially if they make IIR less aggressive. - if (!allNode && depth >= 6 && !ttData.move) + if (!allNode && depth >= 6 && !ttData.move && priorReduction <= 3) depth--; // Step 11. ProbCut