[GHC] #11095: -O0 -g slows GHC down on list literals (compared to -O0 without -g)

GHC ghc-devs at haskell.org
Mon Nov 16 09:45:48 UTC 2015


#11095: -O0 -g slows GHC down on list literals (compared to -O0 without -g)
-------------------------------------+-------------------------------------
        Reporter:  slyfox            |                Owner:
            Type:  bug               |               Status:  new
        Priority:  normal            |            Milestone:
       Component:  Compiler          |              Version:  7.10.2
      Resolution:                    |             Keywords:
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 slyfox):

 Replying to [comment:2 carter]:
 > What c compiler is being invoked.  There's known issues with using clang
 and profiling build way when there's large numbers of literals in a source
 file.  What does gcc --version and ghc --info tell you?

 The build of a Bug.hs is not a -prof build. GHC was built as a "prof"
 flavour to
 pinpoint what it does.

 All GHC's I tried are affected:
 - ghc-HEAD (7.11.20151115, 7.11.20151114)
 - ghc-7.10.2 (7.10.2.20151030)

 ghc -v shows the slowdown is not in a C part, but in CorePrep:

 {{{
 $ ghc -v -O0 -g Bug.hs
 ...
 [1 of 1] Compiling Bug              ( Bug.hs, Bug.o )
 *** Parser:
 *** Renamer/typechecker:
 *** Desugar:
 Result size of Desugar (after optimization)
   = {terms: 2,707, types: 1,360, coercions: 0}
 *** Simplifier:
 Result size of Simplifier
   = {terms: 2,707, types: 1,360, coercions: 0}
 *** Tidy Core:
 Result size of Tidy Core
   = {terms: 2,707, types: 1,360, coercions: 0}
 writeBinIface: 1 Names
 writeBinIface: 3 dict entries
 *** CorePrep:
 Result size of CorePrep <hangs here for a minute>
 ...
 }}}

 {{{
 $ LANG=C gcc --version
 gcc (Gentoo 5.2.0 p1.0, pie-0.6.3) 5.2.0
 Copyright (C) 2015 Free Software Foundation, Inc.
 This is free software; see the source for copying conditions.  There is NO
 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR
 PURPOSE.
 }}}

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


More information about the ghc-tickets mailing list