for (int mc = 1; mc < 64; ++mc)
{
double r = log(d) * log(mc) / 2;
- if (r < 0.80)
- continue;
Reductions[NonPV][imp][d][mc] = int(std::round(r));
Reductions[PV][imp][d][mc] = std::max(Reductions[NonPV][imp][d][mc] - 1, 0);
if (!mainThread)
continue;
- if (Signals.stop)
- sync_cout << "info nodes " << Threads.nodes_searched()
- << " time " << Time.elapsed() << sync_endl;
-
- else if (PVIdx + 1 == multiPV || Time.elapsed() > 3000)
+ if (Signals.stop || PVIdx + 1 == multiPV || Time.elapsed() > 3000)
sync_cout << UCI::pv(rootPos, rootDepth, alpha, beta) << sync_endl;
}
&& pos.rule50_count() == 0
&& !pos.can_castle(ANY_CASTLING))
{
- int found, v = Tablebases::probe_wdl(pos, &found);
+ TB::ProbeState err;
+ TB::WDLScore v = Tablebases::probe_wdl(pos, &err);
- if (found)
+ if (err != TB::ProbeState::FAIL)
{
thisThread->tbHits++;