mirror of
https://github.com/sockspls/badfish
synced 2025-05-01 01:03:09 +00:00
Revert "Implement old 'multipv' search"
This revert the following commit:
44a7db0f9a
Bug report by Ronald de Man in issue:
https://github.com/official-stockfish/Stockfish/issues/1392
Bench: 5023629
This commit is contained in:
parent
d93baae220
commit
e316e432d0
2 changed files with 9 additions and 17 deletions
|
@ -297,7 +297,7 @@ void Thread::search() {
|
|||
mainThread->bestMoveChanges = 0;
|
||||
}
|
||||
|
||||
multiPV = Options["MultiPV"];
|
||||
size_t multiPV = Options["MultiPV"];
|
||||
Skill skill(Options["Skill Level"]);
|
||||
|
||||
// When playing with strength handicap enable MultiPV search that we will
|
||||
|
@ -802,21 +802,13 @@ moves_loop: // When in check search starts from here
|
|||
if (move == excludedMove)
|
||||
continue;
|
||||
|
||||
if (rootNode)
|
||||
{
|
||||
// At root obey the "searchmoves" option and skip moves not listed in Root
|
||||
// Move List. As a consequence any illegal move is also skipped.
|
||||
if (!std::count(thisThread->rootMoves.begin() + thisThread->PVIdx,
|
||||
// Move List. As a consequence any illegal move is also skipped. In MultiPV
|
||||
// mode we also skip PV moves which have been already searched.
|
||||
if (rootNode && !std::count(thisThread->rootMoves.begin() + thisThread->PVIdx,
|
||||
thisThread->rootMoves.end(), move))
|
||||
continue;
|
||||
|
||||
// In MultiPV mode we not only skip PV moves which have already been searched,
|
||||
// but also any other move except we have reached the last PV line.
|
||||
if ( thisThread->PVIdx + 1 < thisThread->multiPV
|
||||
&& move != ttMove)
|
||||
continue;
|
||||
}
|
||||
|
||||
ss->moveCount = ++moveCount;
|
||||
|
||||
if (rootNode && thisThread == Threads.main() && Time.elapsed() > 3000)
|
||||
|
@ -1535,7 +1527,7 @@ string UCI::pv(const Position& pos, Depth depth, Value alpha, Value beta) {
|
|||
int elapsed = Time.elapsed() + 1;
|
||||
const RootMoves& rootMoves = pos.this_thread()->rootMoves;
|
||||
size_t PVIdx = pos.this_thread()->PVIdx;
|
||||
size_t multiPV = pos.this_thread()->multiPV;
|
||||
size_t multiPV = std::min((size_t)Options["MultiPV"], rootMoves.size());
|
||||
uint64_t nodesSearched = Threads.nodes_searched();
|
||||
uint64_t tbHits = Threads.tb_hits() + (TB::RootInTB ? rootMoves.size() : 0);
|
||||
|
||||
|
|
|
@ -60,7 +60,7 @@ public:
|
|||
Pawns::Table pawnsTable;
|
||||
Material::Table materialTable;
|
||||
Endgames endgames;
|
||||
size_t PVIdx, multiPV;
|
||||
size_t PVIdx;
|
||||
int selDepth, nmp_ply, nmp_odd;
|
||||
std::atomic<uint64_t> nodes, tbHits;
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue