a better workflow?
Jan Stolarek
jan.stolarek at p.lodz.pl
Tue Jul 23 13:25:43 UTC 2019
Hi Richard,
I think it's been around two years since I last built GHC, but back in the days I could get a full
build time around 17 minutes on my laptop. Not sure how much the build times have increased since
then but I suspect you should be able to build GHC faster than in 45 minutes. The trick I used
wasn't really much of a trick, it was simply about having good hardware: an SSD drive, a good CPU
(I have Xeon), and lots of RAM. And then I had:
1. several separate source trees. This means being able to work on your own stuff in one source
tree and being able to review MRs in another without a need to do a full rebuild when you want to
switch between the two (or more). Downside of this setup was when you wanted to bootstrap from
different GHC versions in different source trees, but with enough scripting this is definitely
doable.
2. build trees separated from the source trees. If I really wanted to squeeze max performance I
would map the build tree onto a ramdisk - that's why you want lots of RAM. It definitely made the
build faster but I can't recall how much it improved the testsuite runs. The downside of course
is that you lose the build when you switch off your machine, so I simply wouldn't switch off
mine, only suspend it to RAM.
Janek
PS. A friend of mine recently told me that his company was considering using AWS but after
calculating the costs it turned out that buying and maintaining their own servers will be
cheaper.
---
Politechnika Łódzka
Lodz University of Technology
Treść tej wiadomości zawiera informacje przeznaczone tylko dla adresata.
Jeżeli nie jesteście Państwo jej adresatem, bądź otrzymaliście ją przez pomyłkę
prosimy o powiadomienie o tym nadawcy oraz trwałe jej usunięcie.
This email contains information intended solely for the use of the individual to whom it is addressed.
If you are not the intended recipient or if you have received this message in error,
please notify the sender and delete it from your system.
More information about the ghc-devs
mailing list