diff --git a/src/search.cpp b/src/search.cpp index 7b7737ea..af0946ea 100644 --- a/src/search.cpp +++ b/src/search.cpp @@ -160,7 +160,7 @@ void Search::init() { Reductions[PV][imp][d][mc] = std::max(Reductions[NonPV][imp][d][mc] - 1, 0); // Increase reduction for non-PV nodes when eval is not improving - if (!imp && Reductions[NonPV][imp][d][mc] >= 2) + if (!imp && r > 1.0) Reductions[NonPV][imp][d][mc]++; } diff --git a/src/timeman.h b/src/timeman.h index 92854862..4e58cebb 100644 --- a/src/timeman.h +++ b/src/timeman.h @@ -33,7 +33,8 @@ public: void init(Search::LimitsType& limits, Color us, int ply); TimePoint optimum() const { return optimumTime; } TimePoint maximum() const { return maximumTime; } - TimePoint elapsed() const { return int(Search::Limits.npmsec ? Threads.nodes_searched() : now() - startTime); } + TimePoint elapsed() const { return Search::Limits.npmsec ? + TimePoint(Threads.nodes_searched()) : now() - startTime; } int64_t availableNodes; // When in 'nodes as time' mode