id	summary	reporter	owner	description	type	status	priority	resolution	keywords	cc	topic	difficulty	mentor
1594	Build multiple Cabal packages in parallel	tibbe		"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.

Task: Add support for building packages in parallel, via a set of command line flags (e.g. -j).

Sub-tasks:

    * Keep a queue of available build tasks and schedule the tasks on multiple threads, while respecting task dependencies. Cabal already has an idea of what needs to be built in which order so you don't need to start from scratch.

    * Adapt the program output (including logging) system so that parallel builds don't generate garbled output.

See this ticket for more information: http://hackage.haskell.org/trac/hackage/ticket/447

Interested Student
 * Mikhail Glushenkov <the.dead.shall.rise@gmail.com>
 * Marco Túlio Gontijo e Silva <marcot@marcot.eti.br>"	proposed-project	closed	good	fixed		marcot@…	Cabal	1 person Summer	not-accepted
