nofib comparisons between 7.0.4, 7.4.2, 7.6.1, and 7.6.2
Johan Tibell
johan.tibell at gmail.com
Mon Feb 4 23:33:58 CET 2013
Hi all,
I haven't had much time to do performance tzar work yet, but I did run
nofib on the last few GHC releases to see the current trend. The benchmarks
where run on my 64-bit Core i7-3770 @ 3.40GHz Linux machine. Here are the
results:
7.0.4 to 7.4.2:
------------------------------------------------------------
--------------------
Program Size Allocs Runtime Elapsed TotalMem
--------------------------------------------------------------------------------
Min -1.6% -57.3% -39.1% -36.4% -25.0%
Max +21.5% +121.5% +24.5% +25.4% +300.0%
Geometric Mean +8.5% -0.7% -7.1% -5.2% +2.0%
The big loser here in terms of runtime is "kahan", which I added to test
tight loops involving unboxed arrays and floating point arithmetic. I
believe there was a regression in fromIntegral RULES during this release,
which meant that some conversions between fixed-width types went via
Integer, causing unnecessary allocation.
7.4.2 to 7.6.1:
--------------------------------------------------------------------------------
Program Size Allocs Runtime Elapsed TotalMem
--------------------------------------------------------------------------------
Min -5.1% -23.8% -11.8% -12.9% -50.0%
Max +5.3% +225.5% +7.2% +8.8% +200.0%
Geometric Mean -0.4% +2.1% +0.3% +0.2% +0.7%
The biggest loser here in terms of runtime is "integrate". I haven't looked
into why yet.
7.6.1 to 7.6.2:
--------------------------------------------------------------------------------
Program Size Allocs Runtime Elapsed TotalMem
--------------------------------------------------------------------------------
Min -2.9% +0.0% -4.8% -4.4% -1.9%
Max +0.0% +1.0% +4.5% +6.4% +20.8%
Geometric Mean -1.7% +0.0% +0.1% +0.3% +0.2%
I have two takeaways:
* It's worthwhile running nofib before releases as it does find some
programs that regressed.
* There are some other regressions out there (i.e. in code on Hackage)
that aren't reflected here, suggesting that we need to add more programs to
nofib.
Cheers,
Johan
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/ghc-devs/attachments/20130204/479c17b0/attachment-0001.htm>
More information about the ghc-devs
mailing list