Fwd: Is anything being done to remedy the soul crushing compile times of GHC?
qdunkan at gmail.com
Wed Feb 17 20:17:15 UTC 2016
On Wed, Feb 17, 2016 at 2:14 AM, Edward Z. Yang <ezyang at mit.edu> wrote:
> Another large culprit for performance is that the fact that ghc --make
> must preprocess and parse the header of every local Haskell file:
> https://ghc.haskell.org/trac/ghc/ticket/618 (as well
> as https://ghc.haskell.org/trac/ghc/ticket/1290). Neil and I
> have observed that when you use something better (like Shake)
> recompilation performance gets a lot better, esp. when you
> have a lot of modules.
I can second this, and I suspect the reason I've never had slowness
problems is that I use shake exclusively.
I'm looking forward to your work with integrating shake into ghc. If
it means we can get both shake's speed and parallelism as well as
--make's ability to retain hi files in memory, it should give a really
nice speed boost. I see a lot of "compilation IS NOT required",
presumably that would be even faster if it didn't have to start a new
ghc and inspect all the hi files again before finding that out!
More information about the ghc-devs