mirror of
https://github.com/sockspls/badfish
synced 2025-04-30 00:33:09 +00:00
Raise stack size to 8MB for pthreads
It seems there is no other way to specify stack size on std::thread than linker flags and the effective flags are named differently in many toolchains. On toolchains where pthread is always available, this patch changes the stack size change in our C++ code via pthread to ensure a minimum stack size of 8MB, instead of relying on linker defaults which may be platform-specific. Also raises default stack size on OSX to current Linux default (8MB) just to be safe. Closes https://github.com/official-stockfish/Stockfish/pull/2303 No functional change
This commit is contained in:
parent
7b06475294
commit
a858defd33
1 changed files with 5 additions and 2 deletions
|
@ -73,11 +73,14 @@ typedef std::condition_variable ConditionVariable;
|
|||
/// adjust it to TH_STACK_SIZE. The implementation calls pthread_create() with
|
||||
/// proper stack size parameter.
|
||||
|
||||
#if defined(__APPLE__)
|
||||
/// On toolchains where pthread is always available, ensure minimum stack size
|
||||
/// instead of relying on linker defaults which may be platform-specific.
|
||||
|
||||
#if defined(__APPLE__) || defined(__MINGW32__) || defined(__MINGW64__)
|
||||
|
||||
#include <pthread.h>
|
||||
|
||||
static const size_t TH_STACK_SIZE = 2 * 1024 * 1024;
|
||||
static const size_t TH_STACK_SIZE = 8 * 1024 * 1024;
|
||||
|
||||
template <class T, class P = std::pair<T*, void(T::*)()>>
|
||||
void* start_routine(void* ptr)
|
||||
|
|
Loading…
Add table
Reference in a new issue