[GHC] #9669: Long compile time/high memory usage for modules with many deriving clauses

GHC ghc-devs at haskell.org
Tue Oct 7 22:03:32 UTC 2014


#9669: Long compile time/high memory usage for modules with many deriving clauses
-------------------------------------+-------------------------------------
              Reporter:  snoyberg    |            Owner:
                  Type:  bug         |           Status:  new
              Priority:  normal      |        Milestone:
             Component:  Compiler    |          Version:  7.8.3
            Resolution:              |         Keywords:
      Operating System:  Linux       |     Architecture:  x86_64 (amd64)
       Type of failure:  Compile-    |       Difficulty:  Unknown
  time performance bug               |       Blocked By:
             Test Case:              |  Related Tickets:
              Blocking:              |
Differential Revisions:              |
-------------------------------------+-------------------------------------

Comment (by simonpj):

 Thanks. The code is indeed pretty big, with a "term size" of over 200,000.
 A module of a few hundred lines is more like 40,000.  The simplifier is
 run many times over this code so it's perhaps not surprising that it takes
 most of the compile time.

 Still, I wonder if there is anything non-linear going on, tickled by the
 form of the boilerplate code. The occurrence analyser runs exacty as often
 as the simplifier, yet only uses 5% of the time.

 You could try adding `-auto-all` (or whatever the flag is) for `Simplify`
 to get more detailed cost centre information on the simplifier?

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


More information about the ghc-tickets mailing list