From 68d61b80c60a81055a2ffb2e251a237b979e9b31 Mon Sep 17 00:00:00 2001 From: Marco Costalba Date: Tue, 28 Jul 2015 12:53:13 +0200 Subject: [PATCH 1/1] Simplify IID depth formula Restore original formula messed up during half-ply removal. STC LLR: 4.11 (-2.94,2.94) [-3.00,1.00] Total: 21349 W: 4091 L: 3909 D: 13349 LTC LLR: 5.42 (-2.94,2.94) [-3.00,1.00] Total: 52819 W: 8321 L: 8122 D: 36376 bench: 8040572 --- src/search.cpp | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/src/search.cpp b/src/search.cpp index 3ac52f8c..57a55176 100644 --- a/src/search.cpp +++ b/src/search.cpp @@ -769,9 +769,9 @@ namespace { && !ttMove && (PvNode || ss->staticEval + 256 >= beta)) { - Depth d = 2 * (depth - 2 * ONE_PLY) - (PvNode ? DEPTH_ZERO : depth / 2); + Depth d = depth - 2 * ONE_PLY - (PvNode ? DEPTH_ZERO : depth / 4); ss->skipEarlyPruning = true; - search(pos, ss, alpha, beta, d / 2, true); + search(pos, ss, alpha, beta, d, true); ss->skipEarlyPruning = false; tte = TT.probe(posKey, ttHit); @@ -821,13 +821,11 @@ moves_loop: // When in check and at SpNode search starts from here if (!pos.legal(move, ci.pinned)) continue; - moveCount = ++splitPoint->moveCount; + ss->moveCount = moveCount = ++splitPoint->moveCount; splitPoint->spinlock.release(); } else - ++moveCount; - - ss->moveCount = moveCount; + ss->moveCount = ++moveCount; if (RootNode) { @@ -935,8 +933,7 @@ moves_loop: // When in check and at SpNode search starts from here // Check for legality just before making the move if (!RootNode && !SpNode && !pos.legal(move, ci.pinned)) { - moveCount--; - ss->moveCount = moveCount; + ss->moveCount = --moveCount; continue; } @@ -1429,7 +1426,7 @@ moves_loop: // When in check and at SpNode search starts from here } // Extra penalty for PV move in previous ply when it gets refuted - if (is_ok((ss-2)->currentMove) && (ss-1)->moveCount==1 && !pos.captured_piece_type()) + if (is_ok((ss-2)->currentMove) && (ss-1)->moveCount == 1 && !pos.captured_piece_type()) { Square prevPrevSq = to_sq((ss-2)->currentMove); HistoryStats& ttMoveCmh = CounterMovesHistory[pos.piece_on(prevPrevSq)][prevPrevSq]; -- 2.39.2