[GHC] #7258: Compiling DynFlags is jolly slow

GHC ghc-devs at haskell.org
Thu Oct 26 14:48:05 UTC 2017


#7258: Compiling DynFlags is jolly slow
-------------------------------------+-------------------------------------
        Reporter:  simonpj           |                Owner:  simonpj
            Type:  bug               |               Status:  new
        Priority:  normal            |            Milestone:
       Component:  Compiler          |              Version:  7.6.1
      Resolution:                    |             Keywords:  deriving-perf
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 simonpj):

 That is indeed interesting.

 * The bad cases are `read`, `read-appl` and `show` (comment:56)
 * They all generate very big Cmm (png just before (comment:62)
 * They all generate unusually large Core-to-Cmm ratio (comment:68)
 * This very large Cmm makes `sink` go bananas.

 Is the large Cmm accounted for by the big Core-to-Cmm ratio, or do these
 examples also have Core sizes that scale badly (look at term size only)?

 I'm guessing that the Core size does not scale badly.  If that was so our
 questions would be

 * Why do we generate so much Cmm per unit of Core
 * Can we make `sink` scale better

 Both are worth working on.

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


More information about the ghc-tickets mailing list