mirror of
https://github.com/sockspls/badfish
synced 2025-04-30 00:33:09 +00:00
Start a TT resize only after search finished.
As noticed in the forum, a crash in extract_ponder_from_tt could result if hash size is set before the ponder move is printed. While it is arguably a GUI issue (but it got me on the cli), it is easy to avoid this issue. Closes https://github.com/official-stockfish/Stockfish/pull/1856 No functional change.
This commit is contained in:
parent
4f3804f3f3
commit
fda0161e3a
2 changed files with 6 additions and 3 deletions
|
@ -136,10 +136,10 @@ void ThreadPool::set(size_t requested) {
|
|||
while (size() < requested)
|
||||
push_back(new Thread(size()));
|
||||
clear();
|
||||
}
|
||||
|
||||
// Reallocate the hash with the new threadpool size
|
||||
TT.resize(Options["Hash"]);
|
||||
// Reallocate the hash with the new threadpool size
|
||||
TT.resize(Options["Hash"]);
|
||||
}
|
||||
}
|
||||
|
||||
/// ThreadPool::clear() sets threadPool data to initial values.
|
||||
|
|
|
@ -24,6 +24,7 @@
|
|||
|
||||
#include "bitboard.h"
|
||||
#include "misc.h"
|
||||
#include "thread.h"
|
||||
#include "tt.h"
|
||||
#include "uci.h"
|
||||
|
||||
|
@ -58,6 +59,8 @@ void TTEntry::save(Key k, Value v, Bound b, Depth d, Move m, Value ev) {
|
|||
|
||||
void TranspositionTable::resize(size_t mbSize) {
|
||||
|
||||
Threads.main()->wait_for_search_finished();
|
||||
|
||||
clusterCount = mbSize * 1024 * 1024 / sizeof(Cluster);
|
||||
|
||||
free(mem);
|
||||
|
|
Loading…
Add table
Reference in a new issue