[GHC] #13789: Look into haddock performance regressions due to desugaring on -fno-code

GHC ghc-devs at haskell.org
Mon Jun 5 20:12:53 UTC 2017


#13789: Look into haddock performance regressions due to desugaring on -fno-code
-------------------------------------+-------------------------------------
           Reporter:  bgamari        |             Owner:  (none)
               Type:  task           |            Status:  new
           Priority:  normal         |         Milestone:  8.4.1
          Component:  Compiler       |           Version:  8.0.1
           Keywords:                 |  Operating System:  Unknown/Multiple
       Architecture:                 |   Type of failure:  None/Unknown
  Unknown/Multiple                   |
          Test Case:                 |        Blocked By:
           Blocking:                 |   Related Tickets:
Differential Rev(s):                 |         Wiki Page:
-------------------------------------+-------------------------------------
 c9eb4385aad248118650725b7b699bb97ee21c0d enabled desugaring when GHC is
 invoked with `-fno-code` in order to resolve #10600. Unfortunately this
 causes GHC to do more (unnecessary) work when parsing for haddock, causing
 some rather significant allocations regressions in the haddock performance
 tests,
 {{{
 bytes allocated value is too high:
     Expected    haddock.base(normal) bytes allocated: 25592972912 +/-5%
     Lower bound haddock.base(normal) bytes allocated: 24313324266
     Upper bound haddock.base(normal) bytes allocated: 26872621558
     Actual      haddock.base(normal) bytes allocated: 27868466432
     Deviation   haddock.base(normal) bytes allocated:         8.9 %
 *** unexpected stat test failure for haddock.base(normal)
 =====> haddock.Cabal(normal) 6 of 7 [0, 0, 0]
 bytes allocated value is too high:
     Expected    haddock.Cabal(normal) bytes allocated: 18269309128 +/-5%
     Lower bound haddock.Cabal(normal) bytes allocated: 17355843671
     Upper bound haddock.Cabal(normal) bytes allocated: 19182774585
     Actual      haddock.Cabal(normal) bytes allocated: 22294859000
     Deviation   haddock.Cabal(normal) bytes allocated:        22.0 %
 *** unexpected stat test failure for haddock.Cabal(normal)
 =====> haddock.compiler(normal) 7 of 7 [0, 0, 0]
 bytes allocated value is too high:
     Expected    haddock.compiler(normal) bytes allocated: 52762752968
 +/-10%
     Lower bound haddock.compiler(normal) bytes allocated: 47486477671
     Upper bound haddock.compiler(normal) bytes allocated: 58039028265
     Actual      haddock.compiler(normal) bytes allocated: 65378619232
     Deviation   haddock.compiler(normal) bytes allocated:        23.9 %
 *** unexpected stat test failure for haddock.compiler(normal)

 }}}
 Work out how to mitigate this.

--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/13789>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler


More information about the ghc-tickets mailing list