What is the scheduler type of GHC?
Edward Z. Yang
ezyang at MIT.EDU
Wed Jan 16 20:26:55 CET 2013
Excerpts from Magicloud Magiclouds's message of Wed Jan 16 00:32:00 -0800 2013:
> Just read a post about schedulers in erlang and go lang, which informed
> me that erlang is preemptive and go lang is cooperative.
> So which is used by GHC? From ghc wiki about rts, if the question is only
> within haskell threads, it seems like cooperative.
Additionally, the current scheduler is round-robin with some heuristics for
when threads get to "cut the line", so we do not have priorities for threads.
I'm currently working on a patch which allows for more flexible scheduling.
More information about the Glasgow-haskell-users