Module Parallel_kernel.Scheduler

module type S = sig ... end
module type S_concurrent = sig ... end
module Sequential : S

A trivial scheduler that runs all parallel tasks sequentially.

val heartbeat : t @ local -> (n:Base.int -> Base.unit) @ local

heartbeat t ~n allows n jobs to be promoted to parallel tasks. If there are fewer than n tasks in the current queue, the remaining count will be used to eagerly promote new tasks. If n < 0, the next n promotions will be skipped.