Skip to content

Commit 51009b3

Browse files
committed
Improvde MultiPV - no functional change official-stockfish#2163
(cherry picked from commit 1817411)
1 parent c157bed commit 51009b3

File tree

2 files changed

+18
-6
lines changed

2 files changed

+18
-6
lines changed

src/search.cpp

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -427,8 +427,11 @@ ss->pv = pv;
427427
#endif
428428

429429
beta = VALUE_INFINITE;
430-
430+
#ifdef Maverick //Improve multiPV mode #2163 by Joerg Oster
431+
multiPV = Options["MultiPV"];
432+
#else
431433
size_t multiPV = Options["MultiPV"];
434+
#endif
432435
Skill skill(Options["Skill Level"]);
433436

434437
#ifdef Maverick //zugzwangMates
@@ -1156,6 +1159,14 @@ namespace {
11561159
sync_cout << "info depth " << depth / ONE_PLY
11571160
<< " currmove " << UCI::move(move, pos.is_chess960())
11581161
<< " currmovenumber " << moveCount + thisThread->pvIdx << sync_endl;
1162+
#ifdef Maverick // Improve multiPV mode #2163 by Joerg Oster
1163+
// In MultiPV mode also skip moves which will be searched later as PV moves
1164+
// this section updated by mstembera
1165+
if ( rootNode
1166+
&& std::find(thisThread->rootMoves.begin() + thisThread->pvIdx, thisThread->rootMoves.begin() + thisThread->pvLast, move)
1167+
== thisThread->rootMoves.begin() + thisThread->pvLast)
1168+
continue;
1169+
#endif
11591170
if (PvNode)
11601171
(ss+1)->pv = nullptr;
11611172

src/thread.h

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -60,13 +60,14 @@ class Thread {
6060

6161
Pawns::Table pawnsTable;
6262
Material::Table materialTable;
63-
size_t pvIdx, pvLast;
6463

65-
#ifdef Maverick // Gunther Demetz zugzwangSolver
66-
int selDepth, nmpMinPly, zugzwangMates;
67-
int64_t visits, allScores; // joergoster and Stefano80 monteCarloJ_03
64+
#ifdef Maverick
65+
size_t pvIdx, multiPV, pvLast; // Improve multiPV mode by joergoster
66+
int selDepth, nmpMinPly, zugzwangMates; // Gunther Demetz zugzwangSolver
67+
int64_t visits, allScores; // Moez Jellouli -> Save_probcut #e05dc73
6868
#else
69-
int selDepth, nmpMinPly;
69+
size_t pvIdx, pvLast;
70+
int selDepth, nmpMinPly;
7071
#endif
7172

7273
Color nmpColor;

0 commit comments

Comments
 (0)