[Haskell-cafe] Cabal/cabal-install 1.20 release candidates

Johannes Waldmann waldmann at imn.htwk-leipzig.de
Wed Apr 16 11:25:02 UTC 2014

I am curious about the method used by cabal-install to distribute the
compilation on several jobs (cores). 

By looking at the OS process list, I often see that initally, and at several
times later, all cores are busy, but then there are states where only one
job is running. That's presumably because all future compilations depend on
this single job.

Does cabal's scheduler take into account anything else besides the actual
depencency relation - e.g., something about expected duration of
compilations? (And would it help?)

Oh, and I find it slightly annoying that I cannot see (from stdout) what
actually is going on. I understand it's a design problem, and the current
solution (showing just package names, not module names, for parallel builds)
may indeed be better than printing too much.

More information about the Haskell-Cafe mailing list