
On 3/27/11 7:16 AM, Johan Tibell wrote:
On Sun, Mar 27, 2011 at 1:03 PM, Andrew Coppin
wrote: *** Build multiple Cabal packages in parallel *** http://hackage.haskell.org/trac/summer-of-code/ticket/1594
Many developers have multi-core machines but Cabal runs the build process in a single thread, only making use of one core. If the build process could be parallelized build times could be cut by perhaps a factor of 2-8, depending on the number of cores and opportunity of parallel execution available.
Isn't the Cabal build process strictly I/O-limited rather than CPU-limited?
It's mostly CPU-limited due to spending most of its time in ghc --make (which is CPU limited). It would be nice to parallelize GHC itself at some point but that's a harder task I believe.
I'm sure it is. But even if we had parallel-compiling GHC, having a parallel-building Cabal would make it easier to make the leap to distributed building--- which would be helpful for folks working on clusters and needing to install a whole lot of packages at once (e.g., bootstrapping or reinstalling). Haskell supercomputing ahoy! -- Live well, ~wren