Regression: space leak in HEAD vs. 7.4
|Reported by:||simonmar||Owned by:||igloo|
|Type of failure:||Compile-time performance bug||Test Case:|
|Related Tickets:||Differential Revisions:|
I often keep an eye on compiler performance by compiling Cabal. Yesterday I noticed that HEAD appears to have a space leak: it needs 806MB to compile Cabal with -O, vs 424MB with 7.4.1.
Here are the results. First 7.4.1:
$ ghc-7.4.1 -O --make Distribution.Simple +RTS -s
53,658,077,704 bytes allocated in the heap 9,679,170,192 bytes copied during GC 148,845,896 bytes maximum residency (56 sample(s)) 6,610,216 bytes maximum slop 424 MB total memory in use (0 MB lost due to fragmentation) Tot time (elapsed) Avg pause Max pause Gen 0 102382 colls, 0 par 24.24s 24.22s 0.0002s 0.0046s Gen 1 56 colls, 0 par 12.48s 12.48s 0.2229s 0.4738s INIT time 0.00s ( 0.00s elapsed) MUT time 57.37s ( 60.81s elapsed) GC time 36.72s ( 36.70s elapsed) EXIT time 0.00s ( 0.00s elapsed) Total time 94.09s ( 97.52s elapsed)
$ ghc-nightly2 -O --make Distribution.Simple +RTS -s
55,699,304,032 bytes allocated in the heap 11,721,558,728 bytes copied during GC 288,988,200 bytes maximum residency (50 sample(s)) 7,808,192 bytes maximum slop 806 MB total memory in use (0 MB lost due to fragmentation) Tot time (elapsed) Avg pause Max pause Gen 0 107655 colls, 0 par 28.83s 28.83s 0.0003s 0.0043s Gen 1 50 colls, 0 par 16.36s 16.36s 0.3272s 1.0063s TASKS: 3 (1 bound, 2 peak workers (2 total), using -N1) INIT time 0.00s ( 0.00s elapsed) MUT time 59.87s ( 63.18s elapsed) GC time 45.19s ( 45.19s elapsed) EXIT time 0.00s ( 0.00s elapsed) Total time 105.07s (108.37s elapsed)
We need to squash this before 7.6 is released.