
I agree. The most direct approach is for someone to build profiled compilers and get some sense of where the space and time is going in a run of Haddock, or GHC.
I would be thrilled if someone felt able to do some forensic performance comparison between different versions of GHC and/or Haddock. Would anyone like to do that? There is almost certainly plenty of low-hanging fruit -- you might speed up GHC by 20% and everyone would be Very Happy.
On particular compilation of the Haddock tests is that they embody two distinct sources of variation:
1. Cabal (the source code examined by the run of Haddock
has more/different code
2. Haddock itself may have gotten slower/fatter
(1) is a motivation-sapping problem. Performance tests should have stable input data.
Better tools would certainly help. If we are to retain memory-size numbers, maybe the tests should always be run in such a way that the numbers are stable and predictable.
The other real difficulty is this: if space usage really does go up by 10% in an extremely large and complicated program like Haddock or GHC, it can be jolly hard to nail down what's causing it. If it goes through the roof, it's (relatively) easy to find. If bytes-allocated goes up it's easy to find (use -ticky). But a 10% increase in space usage is always going be hard.
Simon
| -----Original Message-----
| From: ghc-devs [mailto:ghc-devs-bounces@haskell.org] On Behalf Of Simon
| Marlow
| Sent: 28 November 2013 12:31
| To: ghc-devs@haskell.org
| Subject: Re: [commit: testsuite] master: Higher residency in Haddock
| (15c09a3)
|
| On 22/11/13 16:43, git@git.haskell.org wrote:
| > Repository : ssh://git@git.haskell.org/testsuite
| >
| > On branch : master
| > Link :
| http://ghc.haskell.org/trac/ghc/changeset/15c09a332cd24e5d6c4c9a0ede9b1
| 51c9a095f66/testsuite
| >
| >> ---------------------------------------------------------------
| >
| > commit 15c09a332cd24e5d6c4c9a0ede9b151c9a095f66
| > Author: Simon Peyton Jones