Haskell in the Datacentre
&gt; GHC’s runtime is based around an M:N threading model which is designed to map a large number (M) of lightweight Haskell threads onto a small number (N) of heavyweight OS threads. [...] To cut to the chase, we ended up increasing N to be the same as M (or close to it), and this bought us an extra 10-20% throughput per machine.<p>Ah, yes. As a Go developer, really wish Go moved to an 1:1 threading model.