
#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