[GHC] #12545: Compilation time/space regression in GHC 8.0/8.1 (search in type-level lists and -O)

GHC ghc-devs at haskell.org
Tue May 30 23:56:46 UTC 2017


#12545: Compilation time/space regression in GHC 8.0/8.1 (search in type-level
lists and -O)
-------------------------------------+-------------------------------------
        Reporter:                    |                Owner:  (none)
  mikhail.vorozhtsov                 |
            Type:  bug               |               Status:  new
        Priority:  normal            |            Milestone:
       Component:  Compiler          |              Version:  8.0.1
      Resolution:                    |             Keywords:  Inlining
Operating System:  Unknown/Multiple  |         Architecture:
 Type of failure:  Compile-time      |  Unknown/Multiple
  performance bug                    |            Test Case:
      Blocked By:                    |             Blocking:
 Related Tickets:                    |  Differential Rev(s):
       Wiki Page:                    |
-------------------------------------+-------------------------------------

Comment (by RyanGlScott):

 A sizable chunk of the regression came from commit
 6746549772c5cc0ac66c0fce562f297f4d4b80a2 (Add kind equalities to GHC.)

 {{{
 Commit 6e56ac58a6905197412d58e32792a04a63b94d7e (Fix infix record field
 fixity (#11167 and #11173).)
 -----
 $ time ghc4/inplace/bin/ghc-stage2 -fforce-recomp -O -c -Rghc-timing
 TypeList.hs Regression.hs
 <<ghc: 19608856112 bytes, 2265 GCs, 63045253/234165360 avg/max bytes
 residency (19 samples), 498M in use, 0.001 INIT (0.001 elapsed), 9.087 MUT
 (9.117 elapsed), 3.649 GC (3.647 elapsed) :ghc>>

 real    0m12.829s
 user    0m12.688s
 sys     0m0.140s

 Commit 6746549772c5cc0ac66c0fce562f297f4d4b80a2 (Add kind equalities to
 GHC.)
 -----
 $ time ghc4/inplace/bin/ghc-stage2 -fforce-recomp -O -c -Rghc-timing
 TypeList.hs Regression.hs
 <<ghc: 68214058248 bytes, 5147 GCs, 71712416/267022672 avg/max bytes
 residency (20 samples), 586M in use, 0.001 INIT (0.001 elapsed), 29.850
 MUT (29.871 elapsed), 4.806 GC (4.804 elapsed) :ghc>>

 real    0m34.744s
 user    0m34.572s
 sys     0m0.176s
 }}}

 But that's not the full story, since I get a realtime of `1m12.849s` with
 GHC 8.0.1. I'll try to figure out what other commit(s) are contributing.

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


More information about the ghc-tickets mailing list