Those are impressive results. Typically on programming language benchmarks, the speed of ghc-generated code fares well against C, sometimes outperforming it, at best being 20x faster, at worst being 3x slower. Since it already seems &quot;fast enough&quot;, I&#39;m astonished that jhc could make it even faster.<br>
<br><a href="http://shootout.alioth.debian.org/u32q/benchmark.php?test=all&amp;lang=ghc&amp;lang2=gcc&amp;box=1">http://shootout.alioth.debian.org/u32q/benchmark.php?test=all&amp;lang=ghc&amp;lang2=gcc&amp;box=1</a><br><br>
Where ghc-generated code fares poorly against other languages is memory usage. Has there been an effort in jhc to reduce the memory footprint of generated code? How does it fare against ghc in this area?<br><br>Thanks,<br>
Lyle<br><br><div class="gmail_quote">On Mon, Mar 23, 2009 at 1:09 AM, John Meacham <span dir="ltr">&lt;<a href="mailto:john@repetae.net">john@repetae.net</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div class="im">On Mon, Mar 23, 2009 at 08:40:02AM +0100, Ketil Malde wrote:<br>
&gt; &gt; I had done that, actually, before even my first post, and knew that it<br>
&gt; &gt; changes little to the picture, at least on my system.<br>
&gt;<br>
&gt; I think Bulat was right on the money here: you&#39;re essentially testing<br>
&gt; the efficiency of writing integers.  Presumably, JHC is better than<br>
&gt; GHC at specializing/inlining this library function.<br>
<br>
</div>Indeed, but isn&#39;t being better at specializing/inlining exactly what an<br>
optimizing compiler should do. :)<br>
<br>
In any case, these results are not atypical, generally, if jhc can<br>
compile something, it ends up being 2-3x faster than ghc. After all,<br>
C-comparable (or even superior) speed is the main goal of jhc<br>
development. And if anything, I am more convinced than when I started<br>
that the goal is achievable. With jhc today, C comparable performance<br>
from numerical code is not difficult to achieve with some attention to<br>
strictness annotations.<br>
<font color="#888888"><br>
        John<br>
</font><div class="im"><br>
--<br>
John Meacham - ⑆<a href="http://repetae.net" target="_blank">repetae.net</a>⑆john⑈<br>
_______________________________________________<br>
</div><div><div></div><div class="h5">Haskell mailing list<br>
<a href="mailto:Haskell@haskell.org">Haskell@haskell.org</a><br>
<a href="http://www.haskell.org/mailman/listinfo/haskell" target="_blank">http://www.haskell.org/mailman/listinfo/haskell</a><br>
</div></div></blockquote></div><br>