8.2 and earlier build times

Ben Gamari ben at smart-cactus.org
Wed May 17 20:15:36 UTC 2017


Herbert Valerio Riedel <hvriedel at gmail.com> writes:

> On Wed, May 17, 2017 at 10:56 AM, Simon Peyton Jones via ghc-devs
> <ghc-devs at haskell.org> wrote:
>> That's great news!  Faster than GHC 7.8!   We should advertise this :-).
>
> However, not everything is back to 7.8 levels  when looking at the
> time-dimension, e.g. for regex-tdfa-1.2.2  (with reasonably similar
> versions of dependencies):
>

Interesting. I tried comparing build times of regex-tdfa-1.1.8 with GHC
8.0.2 and 8.2.1, yet was unable to reproduce this. Rather 8.2 was
significantly faster than 8.0.2 (although not in the profiled build, it
seems),


    8.0.2:
      real	2m4.403s
      user	0m2.233s
      sys	4m49.319s

      normal build:   <<ghc: 91089022760 bytes, 3544 GCs, 254983314/623313256 avg/max bytes residency (29 samples), 1777M in use, 0.000 INIT (0.001 elapsed), 0.277 MUT (49.941 elapsed), 0.972 GC (28.395 elapsed) :ghc>>

      profiled build: <<ghc: 53822322480 bytes, 2813 GCs, 152915198/391707624 avg/max bytes residency (24 samples), 1059M in use, 0.000 INIT (0.000 elapsed), 0.177 MUT (29.445 elapsed), 0.527 GC (15.834 elapsed) :ghc>>


    8.2.1-rc2:
      real	1m37.004s
      user	0m1.690s
      sys	4m22.921s

      normal build:   <<ghc: 74407995376 bytes, 2547 GCs, 188938069/574558856 avg/max bytes residency (29 samples), 1524M in use, 0.001 INIT (0.001 elapsed), 66.810 MUT (33.696 elapsed), 79.093 GC (21.746 elapsed) :ghc>>

      profiled build: <<ghc: 55111218888 bytes, 2272 GCs, 149652372/540904144 avg/max bytes residency (26 samples), 1336M in use, 0.001 INIT (0.001 elapsed), 51.072 MUT (25.140 elapsed), 58.298 GC (16.143 elapsed) :ghc>>


My methodology was roughly,

    $ cabal unpack regex-tdfa-1.1.8
    $ cd regex-tdfa-1.1.8
    $ use_component ghc 8.0.2
    $ cabal configure ; time cabal build --ghc-options='-fforce-recomp -v +RTS -t -RTS' >| 8.0.2 2>&1
    $ use_component ghc 8.2.1-rc2
    $ cabal configure ; time cabal build --ghc-options='-fforce-recomp -v +RTS -t -RTS' >| 8.2.1 2>&1

The "normal" and "profiled" build metrics are the +RTS -t lines extract
from Cabal's profiled and unprofiled GHC invocations. I believe the
RTS timings for 8.0.2 are broken due to a (fixed) RTS bug, although I
can't come up with a reference at the moment.

Herbert, did these timings come from a VPS?

Cheers,

- Ben

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 487 bytes
Desc: not available
URL: <http://mail.haskell.org/pipermail/ghc-devs/attachments/20170517/4feb258f/attachment.sig>


More information about the ghc-devs mailing list