That should be fairly easy to optimize I guess? Maybe even using read-only shared memory to share the parsed database in native binary format?<div> <div><div><div><div class="gmail_quote">On Fri, Apr 10, 2009 at 1:08 AM, Andrea Vezzosi <span dir="ltr"><<a href="mailto:sanzhiyan@gmail.com">sanzhiyan@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">The main bottleneck right now is that each ghc process has to read the<br>
package.conf, which afaiu is done with Read and it's awfully slow,<br>
especially if you have many packages installed.<br>
I've started seeing total time improvements when approaching ~300% CPU<br>
usage and only the extralibs installed.<br>
<div><div></div><div class="h5"><br>
On Thu, Apr 9, 2009 at 5:51 PM, Neil Mitchell <<a href="mailto:ndmitchell@gmail.com">ndmitchell@gmail.com</a>> wrote:<br>
>> Not with cabal, with GHC, yes: assuming you have enough modules. Use ghc<br>
>> -M to dump a makefile, and then make -j20 (or whatever you have)<br>
><br>
> There is a performance penalty to running ghc on separate files vs<br>
> --make. If your number of core's is limited --make may be better. I'd<br>
> love someone to figure out what the cross over point is :-)<br>
><br>
> As a related question, how does GHC implement -j3? For my programs, if<br>
> I want to run in parallel, I have to type +RTS -N3. Can I use the same<br>
> trick as GHC?<br>
><br>
> Thanks<br>
><br>
> Neil<br>
> _______________________________________________<br>
> Haskell-Cafe mailing list<br>
> <a href="mailto:Haskell-Cafe@haskell.org">Haskell-Cafe@haskell.org</a><br>
> <a href="http://www.haskell.org/mailman/listinfo/haskell-cafe" target="_blank">http://www.haskell.org/mailman/listinfo/haskell-cafe</a><br>
><br>
_______________________________________________<br>
Haskell-Cafe mailing list<br>
<a href="mailto:Haskell-Cafe@haskell.org">Haskell-Cafe@haskell.org</a><br>
<a href="http://www.haskell.org/mailman/listinfo/haskell-cafe" target="_blank">http://www.haskell.org/mailman/listinfo/haskell-cafe</a><br>
</div></div></blockquote></div><br></div></div></div></div>