<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On 8 June 2018 at 00:33, Evan Laforge <span dir="ltr"><<a href="mailto:qdunkan@gmail.com" target="_blank">qdunkan@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">On Thu, Jun 7, 2018 at 2:48 PM, Bartosz Nitka <<a href="mailto:niteria@gmail.com">niteria@gmail.com</a>> wrote:<br>
> What version of GHC are you using?<br>
> There have been some significant improvements like<br>
> <a href="https://phabricator.haskell.org/rGHCb8fec6950ad99cbf11cd22698b8d5ab35afb828f" rel="noreferrer" target="_blank">https://phabricator.haskell.<wbr>org/<wbr>rGHCb8fec6950ad99cbf11cd22698b<wbr>8d5ab35afb828f</a>,<br>
> that only just made it into GHC 8.4.<br>
<br>
</span>I did in fact notice a very nice speedup in 8.4, this explains it.<br>
Finally I know who to thank for it!  Thank you very much for that fix,<br>
it really makes a difference.<br>
<br>
Are there more goodies in the 8.0.2 facebook branch, or have they all<br>
made it into 8.4?<br>
<br>
As loaded modules seem to consume a lot of memory, I've considered<br>
trying GHC.Compact on them, but haven't looked into what that would<br>
entail.  Have you considered something like that?<br></blockquote><div><br></div><div>I think I looked into this and found that it wasn't going to be easy, but I forget exactly why. Off the top of my head: <br></div><div>- you can't compact mutable things: perhaps the FastString table would give us problems here</div><div>- there is lots of deliberate laziness to support demand-loading of interface files, compaction would force all of it<br></div><div>- you can't compact functions, so if there are any functions in ModIface or ModDetails we would have to avoid compacting those parts of the structure somehow</div><div>- there are cycles and sharing in these structures so we would need to use the more expensive compaction method that keeps a hash table, which is 10x slower than cheap compaction</div><div><br></div><div>Probably worth looking into to find out exactly what the problems are though.</div><div><br></div><div>Cheers</div><div>Simon</div><div><br></div><div><br></div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="HOEnZb"><div class="h5">______________________________<wbr>_________________<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-<wbr>bin/mailman/listinfo/ghc-devs</a><br>
</div></div></blockquote></div><br></div></div>