X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=src%2Fsearch.cpp;h=807d261472fc091b96f7aaf71ec46c784a1f810a;hb=e4a0c6c75950bf27b6dc32490a1102499643126b;hp=92ec9eca77dae75a800adf0f719c753288a233a4;hpb=092b27a6d0174f619fff9a53099ac9fdc5c2cb4e;p=stockfish diff --git a/src/search.cpp b/src/search.cpp index 92ec9eca..807d2614 100644 --- a/src/search.cpp +++ b/src/search.cpp @@ -1054,17 +1054,21 @@ moves_loop: // When in check, search starts here } else { + int history = (*contHist[0])[movedPiece][to_sq(move)] + + (*contHist[1])[movedPiece][to_sq(move)] + + (*contHist[3])[movedPiece][to_sq(move)]; + // Continuation history based pruning (~20 Elo) - if (lmrDepth < 5 - && (*contHist[0])[movedPiece][to_sq(move)] - + (*contHist[1])[movedPiece][to_sq(move)] - + (*contHist[3])[movedPiece][to_sq(move)] < -3000 * depth + 3000) + if ( lmrDepth < 5 + && history < -3000 * depth + 3000) continue; + history += thisThread->mainHistory[us][from_to(move)]; + // Futility pruning: parent node (~5 Elo) if ( !ss->inCheck && lmrDepth < 8 - && ss->staticEval + 172 + 145 * lmrDepth <= alpha) + && ss->staticEval + 142 + 139 * lmrDepth + history / 64 <= alpha) continue; // Prune moves with negative SEE (~20 Elo)