nofib comparisons between 7.0.4, 7.4.2, 7.6.1, and 7.6.2

David Terei davidterei at gmail.com
Tue Feb 5 12:17:50 CET 2013


On 5 February 2013 01:24, Nicolas Frisby <nicolas.frisby at gmail.com> wrote:
> Is anyone familiar with the "fibon" directory within the nofib.git
> repository?
>
> http://darcs.haskell.org/nofib/fibon/

Yes. They are from here: https://github.com/dmpots/fibon

Fibon is a newer, alternative benchmarking suite for Haskell done by
David M Peixotto. I've used it at times but sadly haven't had much
luck, it always seems to take many hours to run on my machine.

>
> Johan, this at least seems like an potential home for the additional
> programs you suggested adding. In particular, it has Repa, Dph, Shootout,
> and Hackage subdirectories.
>
> I'm doing a GHC HQ internship at the moment, and one of the
> just-needs-to-happen tasks on my (growing) todo list is to look into fibon.
>
> SPJ recalls that not all of the various building infrastructures were
> getting along. Anyone know the story? Thanks!
>
>
> On Mon, Feb 4, 2013 at 10:33 PM, Johan Tibell <johan.tibell at gmail.com>
> wrote:
>>
>> 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
>>
>>
>> _______________________________________________
>> ghc-devs mailing list
>> ghc-devs at haskell.org
>> http://www.haskell.org/mailman/listinfo/ghc-devs
>>
>
>
> _______________________________________________
> ghc-devs mailing list
> ghc-devs at haskell.org
> http://www.haskell.org/mailman/listinfo/ghc-devs
>



More information about the ghc-devs mailing list