<div dir="ltr">The default (and thus release) `<span style="font-size:12.8px">SRC_HC_OPTS` uses `-H32m` (see mk/<a href="http://config.mk.in">config.mk.in</a>).</span><div><br><div>Maybe you want to run some tests to see if it makes a difference on the total build time?</div><div><br></div><div>I suggest also measuring without any `-H` flag, with just `-H` (see commit below), and with `-H1G` or some other large value.</div></div><div><br></div><div>```</div><div><div>commit 323950933d3260503186b93e7a5a7bdaa4822c1b</div><div>Author: Simon Marlow <<a href="mailto:marlowsd@gmail.com">marlowsd@gmail.com</a>></div><div>Date:   Mon Nov 30 15:18:36 2009 +0000</div><div><br></div><div>    Implement a new heap-tuning option: -H</div><div>    </div><div>    -H alone causes the RTS to use a larger nursery, but without exceeding</div><div>    the amount of memory that the application is already using.  It trades</div><div>    off GC time against locality: the default setting is to use a</div><div>    fixed-size 512k nursery, but this is sometimes worse than using a very</div><div>    large nursery despite the worse locality.</div><div>    </div><div>    Not all programs get faster, but some programs that use large heaps do</div><div>    much better with -H.  e.g. this helps a lot with #3061 (binary-trees),</div><div>    though not as much as specifying -H<large>.  Typically using -H<large></div><div>    is better than plain -H, because the runtime doesn't know ahead of</div><div>    time how much memory you want to use.</div><div>    </div><div>    Should -H be on by default?  I'm not sure, it makes some programs go</div><div>    slower, but others go faster.</div></div><div>```</div><div><br></div><div><br></div><div><br></div><div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Jan 29, 2016 at 2:47 PM, Harry . <span dir="ltr"><<a href="mailto:voldermort@hotmail.com" target="_blank">voldermort@hotmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">> <a href="https://ghc.haskell.org/trac/ghc/wiki/MakingReleases#Makingthebinarybuilds" rel="noreferrer" target="_blank">https://ghc.haskell.org/trac/ghc/wiki/MakingReleases#Makingthebinarybuilds</a><br>
> <a href="https://ghc.haskell.org/trac/ghc/wiki/Building/Using#Buildconfiguration" rel="noreferrer" target="_blank">https://ghc.haskell.org/trac/ghc/wiki/Building/Using#Buildconfiguration</a><br>
<br>
So the mysterious SRC_HC_OPTS = -O -H64m which appears in every build flavour isn't used for the release build?<br>
<div class="HOEnZb"><div class="h5"><br>
_______________________________________________<br>
ghc-devs mailing list<br>
<a href="mailto:ghc-devs@haskell.org">ghc-devs@haskell.org</a><br>
<a href="http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs" rel="noreferrer" target="_blank">http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs</a><br>
</div></div></blockquote></div><br></div>