The ghc-parmake package

[Tags:bsd3, library, program, test]

ghc-parmake is a parallel wrapper for 'ghc --make' intended to work as its drop-in replacement. It can build your Haskell program in parallel using multiple cores. ghc-parmake works by extracting a module dependency graph with 'ghc -M' and then running multiple 'ghc -c' processes in parallel. To set the number of concurrent jobs, use the -j option.


[Skip to Readme]

Properties

Versions 0.1, 0.1.1, 0.1.2, 0.1.3, 0.1.4, 0.1.5, 0.1.6, 0.1.7, 0.1.8, 0.1.9
Dependencies array (>=0.3 && <0.5), base (==4.*), containers (>=0.4 && <0.6), directory (>=1.1 && <2), filepath (==1.*), ghc-parmake (==0.1.*), process (==1.*), temporary (==1.*) [details]
License BSD3
Author Mikhail Glushenkov
Maintainer the.dead.shall.rise@gmail.com
Stability Experimental
Category Development
Home page https://github.com/23Skidoo/ghc-parmake
Bug tracker https://github.com/23Skidoo/ghc-parmake/issues
Source repository head: git clone https://github.com/23Skidoo/ghc-parmake.git
Uploaded Thu Aug 29 16:25:03 UTC 2013 by MikhailGlushenkov
Distributions NixOS:0.1.9
Downloads 1782 total (14 in the last 30 days)
Votes
0 []
Status Docs uploaded by user
Build status unknown [no reports yet]

Modules

[Index]

Downloads

Maintainer's Corner

For package maintainers and hackage trustees

Readme for ghc-parmake

Readme for ghc-parmake-0.1.6

ghc-parmake

Build Status

ghc-parmake is a parallel wrapper for ghc --make intended to work as its drop-in replacement. It can build your Haskell program in parallel using multiple cores and will be integrated with cabal build eventually (though I also plan to support the standalone version).

To use it with cabal, try cabal build --with-ghc=ghc-parmake --ghc-options="-j N".

ghc-parmake works by first extracting a module dependency graph with ghc -M and then running multiple ghc -c processes in parallel. Currently, it can build itself and some small test programs (see the tests directory).

To set the number of concurrent jobs, use the -j option.

Usage

ghc-parmake OPTS FILES

-j N             - Run N jobs in parallel.
--ghc-path=PATH  - Set the path to the ghc executable.

-vv[N]           - Set verbosity to N (only for ghc-parmake). 
                   N is 0-3, default 1.
-v[N]            - Set verbosity to N (both for GHC and ghc-parmake itself).
--help           - Print usage information.
-V               - Print version information.

Other options are passed to GHC unmodified.

Known limitations

  • Build fails when -odir != -hidir.
  • -hisuf/-osuf are not supported (needed when building libs for profiling).
  • Tested only on Linux.