Commit graph

10 commits

Author SHA1 Message Date
Simon Cruanes
6e6a2a1faa feat runner: add get_current_runner
this relies on TLS to access the current pool really quickly.
2023-11-08 11:38:15 -05:00
Simon Cruanes
72f289af84 refactor: use a fixed size work-stealing deque
if it's full, tasks overflow into the main queue.
2023-11-08 11:36:10 -05:00
Simon Cruanes
80031c0a54 fix compilation error 2023-11-08 09:41:57 -05:00
Simon Cruanes
133a0d6128 breaking: change interface for number of threads
now the user can specify `num_threads`; if not provided a sensible
default is picked.
2023-11-08 09:41:57 -05:00
Simon Cruanes
aba0d84ecf
ws pool: random stealing; rework main state machine
in the state machine, after waiting, we check the main queue, else we
directly go to stealing.
2023-10-27 16:05:52 -04:00
Simon Cruanes
e67bffeca5
ws_pool: use TLS for quick worker storage access; reduce contention 2023-10-27 15:18:50 -04:00
Simon Cruanes
b4ddd82ee8
ws pool: use non atomic boolean to reduce number of wakeups; refactor 2023-10-27 14:48:13 -04:00
Simon Cruanes
c044fb8fc9
tweal to WS pool 2023-10-27 12:26:50 -04:00
Simon Cruanes
5409cf8e1b
compat 4.08 2023-10-25 23:50:34 -04:00
Simon Cruanes
3e614ec992
rename Pool to Ws_pool; deprecated Moonpool.Pool 2023-10-25 23:43:18 -04:00
Renamed from src/pool.ml (Browse further)