[GHC] #7450: Regression in optimisation time of functions with many patterns (6.12 to 7.4)?

GHC ghc-devs at haskell.org
Mon Jul 6 11:59:20 UTC 2015


#7450: Regression in optimisation time of functions with many patterns (6.12 to
7.4)?
-------------------------------------+-------------------------------------
        Reporter:  iustin            |                   Owner:  bgamari
            Type:  bug               |                  Status:  patch
        Priority:  normal            |               Milestone:  7.12.1
       Component:  Compiler          |                 Version:  7.6.1
      Resolution:                    |                Keywords:
Operating System:  Unknown/Multiple  |            Architecture:
 Type of failure:  Compile-time      |  Unknown/Multiple
  performance bug                    |               Test Case:
      Blocked By:                    |                Blocking:
 Related Tickets:                    |  Differential Revisions:  Phab:D1012
-------------------------------------+-------------------------------------

Comment (by bgamari):

 Indeed the implementation of `intsToBitmap` had non-linear behavior due to
 the accumulation of nested `map` thunks. I've opened Phab:D1041 to resolve
 this.

 With this fix the profile for the 4096 constructor testcase looks like
 this,
 {{{
         total time  =      245.76 secs   (245764 ticks @ 1000 us, 1
 processor)
         total alloc = 255,033,667,528 bytes  (excludes profiling
 overheads)

 COST CENTRE              MODULE              %time %alloc

 lintAnnots               CoreLint             19.8   34.1
 FloatOutwards            SimplCore             9.7    2.1
 flatten.lookup           CmmBuildInfoTables    4.8    5.2
 simplLetUnfolding        Simplify              4.1    2.2
 completeBind             Simplify              3.9    1.6
 }}}

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


More information about the ghc-tickets mailing list