timings for individual compiler passes (in rc3)

Johannes Waldmann johannes.waldmann at htwk-leipzig.de
Tue Apr 12 13:13:11 UTC 2016


There is this (closed) https://ghc.haskell.org/trac/ghc/ticket/11653
and it's landed in 8.rc3.

Thats good, and I want to make an effort to use this.
But how? Just "-v2"? This gives a lot of noise. And no summary?

Automatic analysis (of the output text stream, by external program)
could be somewhat easier if each data set (starting at "\n!!!")
did occupy exactly one line (currently, line breaks do occur).

Anyway, what do I look for? Any large or suspicious number -
but what exactly is "suspicious"? Anything above 1 second?

Are we to believe the assignment of cost to pass,
or could there be mis-attribution because
result of an earlier pass is only forced later?

Oh, and where do you want discussion of this feature
(mailing list, ticket, ...)? I do hope that it will prove useful,
in the sense that it could allow non-developers like me,
or even build bots, to help spot performance problems.
(E.g., you could advertise to enable this on travis.
Yes, their build times depend on a lot of things, but still.)

- J.W.

More information about the ghc-devs mailing list