feat update default fiber stack=4 m
Some checks failed
linux-arm-gcc / linux-gcc-armhf (push) Successful in 2m10s
linux-mips64-gcc / linux-gcc-mips64el (Release) (push) Successful in 2m35s
linux-mips64-gcc / linux-gcc-mips64el (Debug) (push) Successful in 3m3s
linux-x64-gcc / linux-gcc (Release) (push) Successful in 2m59s
linux-x64-gcc / linux-gcc (Debug) (push) Successful in 3m5s
linux-aarch64-cpu-gcc / linux-gcc-aarch64 (push) Failing after 3h5m17s

This commit is contained in:
tqcq 2024-04-30 18:13:30 +08:00
parent 43c7e9f392
commit 41e460ffd9

View File

@ -54,7 +54,7 @@ class Scheduler {
// Config holds scheduler configuration settings that can be passed to the
// Scheduler constructor.
struct Config {
static constexpr size_t DefaultFiberStackSize = 1024 * 1024;
static constexpr size_t DefaultFiberStackSize = 4 * 1024 * 1024;
// Per-worker-thread settings.
struct WorkerThread {
@ -417,10 +417,11 @@ class Scheduler {
// spinForWork().
void waitForWork() REQUIRES(work.mutex);
// spinForWorkAndLock() attempts to steal work from another Worker, and keeps
// the thread awake for a short duration. This reduces overheads of
// spinForWorkAndLock() attempts to steal work from another Worker, and
// keeps the thread awake for a short duration. This reduces overheads of
// frequently putting the thread to sleep and re-waking. It locks the mutex
// before returning so that a stolen task cannot be re-stolen by other workers.
// before returning so that a stolen task cannot be re-stolen by other
// workers.
void spinForWorkAndLock() ACQUIRE(work.mutex);
// enqueueFiberTimeouts() enqueues all the fibers that have finished