<div dir="ltr"><div>Is anyone familiar with the &quot;fibon&quot; directory within the nofib.git repository?</div><div> </div><div><a href="http://darcs.haskell.org/nofib/fibon/">http://darcs.haskell.org/nofib/fibon/</a></div>

<div> </div><div><div>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.</div></div><div> </div><div>

I&#39;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.</div><div> </div><div>SPJ recalls that not all of the various building infrastructures were getting along. Anyone know the story? Thanks!</div>

</div><div class="gmail_extra"><br><br><div class="gmail_quote">On Mon, Feb 4, 2013 at 10:33 PM, Johan Tibell <span dir="ltr">&lt;<a href="mailto:johan.tibell@gmail.com" target="_blank">johan.tibell@gmail.com</a>&gt;</span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi all,<div><br></div><div>I haven&#39;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:</div>



<div><br></div><div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:13px">7.0.4 to 7.4.2:<div style="color:rgb(80,0,80)"><div><br></div><div><span style="color:rgb(34,34,34);font-family:&quot;courier new&quot;,monospace">------------------------------</span><span style="color:rgb(34,34,34);font-family:&quot;courier new&quot;,monospace">------------------------------</span><span style="color:rgb(34,34,34);font-family:&quot;courier new&quot;,monospace">--------------------</span><br style="color:rgb(34,34,34);font-family:&quot;courier new&quot;,monospace">



<span style="color:rgb(34,34,34);font-family:&quot;courier new&quot;,monospace">        Program           Size    Allocs   Runtime   Elapsed  TotalMem</span></div></div><div><div><font face="courier new, monospace">--------------------------------------------------------------------------------</font></div>



<div><font face="courier new, monospace">            Min          -1.6%    -57.3%    -39.1%    -36.4%    -25.0%</font></div><div><font face="courier new, monospace">            Max         +21.5%   +121.5%    +24.5%    +25.4%   +300.0%</font></div>



<div><font face="courier new, monospace"> Geometric Mean          +8.5%     -0.7%     -7.1%     -5.2%     +2.0%</font></div></div></div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:13px"><font face="courier new, monospace"><br>



</font></div><div><font color="#222222" face="arial, sans-serif">The big loser here in terms of runtime is &quot;kahan&quot;, 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.</font></div>



</div><div><br></div><div><span style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:13px">7.4.2 to 7.6.1:</span></div><div><br></div><div><font face="courier new, monospace" style="color:rgb(34,34,34);font-size:13px">--------------------------------------------------------------------------------<br>



        Program           Size    Allocs   Runtime   Elapsed  TotalMem<br>--------------------------------------------------------------------------------<br>            Min          -5.1%    -23.8%    -11.8%    -12.9%    -50.0%<br>



            Max          +5.3%   +225.5%     +7.2%     +8.8%   +200.0%<br> Geometric Mean          -0.4%     +2.1%     +0.3%     +0.2%     +0.7%</font><br style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:13px">



<br style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:13px"><span style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:13px">The biggest loser here in terms of runtime is &quot;integrate&quot;. I haven&#39;t looked into why yet.</span><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:13px">



<br></div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:13px">7.6.1 to 7.6.2:</div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:13px">

<br></div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:13px"><span style="font-family:&quot;courier new&quot;,monospace">--------------------------------------------------------------------------------</span><br style="font-family:&quot;courier new&quot;,monospace">



<span style="font-family:&quot;courier new&quot;,monospace">        Program           Size    Allocs   Runtime   Elapsed  TotalMem</span><br style="font-family:&quot;courier new&quot;,monospace"><div><font face="courier new, monospace">--------------------------------------------------------------------------------</font></div>



<div><font face="courier new, monospace">            Min          -2.9%     +0.0%     -4.8%     -4.4%     -1.9%</font></div><div><font face="courier new, monospace">            Max          +0.0%     +1.0%     +4.5%     +6.4%    +20.8%</font></div>



<div><font face="courier new, monospace"> Geometric Mean          -1.7%     +0.0%     +0.1%     +0.3%     +0.2%</font></div><div><br></div><div>I have two takeaways:</div><div><br></div><div> * It&#39;s worthwhile running nofib before releases as it does find some programs that regressed.</div>



<div> * There are some other regressions out there (i.e. in code on Hackage) that aren&#39;t reflected here, suggesting that we need to add more programs to nofib.</div><div><br></div><div>Cheers,</div><div>Johan</div><div>



<br></div></div></div>
<br>_______________________________________________<br>
ghc-devs mailing list<br>
<a href="mailto:ghc-devs@haskell.org">ghc-devs@haskell.org</a><br>
<a href="http://www.haskell.org/mailman/listinfo/ghc-devs" target="_blank">http://www.haskell.org/mailman/listinfo/ghc-devs</a><br>
<br></blockquote></div><br></div>