X-Git-Url: https://git.sesse.net/?p=stockfish;a=blobdiff_plain;f=src%2Fsearch.cpp;h=13f333d9fc5a95511f133ee15f5d0a681e095f16;hp=8da1c34512293bf027bb2db737b98ce68b424467;hb=57340c109b0ddd8764bf73dfa3bfe2bbe7928b59;hpb=0d292d1a2d3f2f72270ee13c2231bc8cb84ede7f diff --git a/src/search.cpp b/src/search.cpp index 8da1c345..13f333d9 100644 --- a/src/search.cpp +++ b/src/search.cpp @@ -162,7 +162,10 @@ namespace { // Step 6. Razoring + // Maximum depth for razoring const Depth RazorDepth = 4 * OnePly; + + // Dynamic razoring margin based on depth inline Value razor_margin(Depth d) { return Value(0x200 + 0x10 * d); } // Step 8. Null move search with verification search @@ -171,11 +174,12 @@ namespace { // evaluation of the position is more than NullMoveMargin below beta. const Value NullMoveMargin = Value(0x200); - // Depth limit for use of dynamic threat detection when null move fails low + // Maximum depth for use of dynamic threat detection when null move fails low const Depth ThreatDepth = 5 * OnePly; // Step 9. Internal iterative deepening + // Minimum depth for use of internal iterative deepening const Depth IIDDepthAtPVNodes = 5 * OnePly; const Depth IIDDepthAtNonPVNodes = 8 * OnePly; @@ -191,6 +195,7 @@ namespace { Depth CheckExtension[2], SingleEvasionExtension[2], PawnPushTo7thExtension[2]; Depth PassedPawnExtension[2], PawnEndgameExtension[2], MateThreatExtension[2]; + // Minimum depth for use of singular extension const Depth SingularExtensionDepthAtPVNodes = 6 * OnePly; const Depth SingularExtensionDepthAtNonPVNodes = 8 * OnePly; @@ -200,6 +205,7 @@ namespace { // Step 12. Futility pruning + // Futility margin for quiescence search const Value FutilityMarginQS = Value(0x80); // Futility lookup tables (initialized at startup) and their getter functions @@ -2762,9 +2768,6 @@ namespace { cout << "Failed to create thread number " << i << endl; Application::exit_with_failure(); } - - // Wait until the thread has finished launching and is gone to sleep - while (threads[i].state != THREAD_SLEEPING); } } @@ -2993,9 +2996,6 @@ namespace { if (ActiveThreads == 1) return; - for (int i = 1; i < ActiveThreads; i++) - assert(threads[i].state == THREAD_SLEEPING); - #if !defined(_MSC_VER) pthread_mutex_lock(&WaitLock); pthread_cond_broadcast(&WaitCond);