
#11735: Optimize coercionKind -------------------------------------+------------------------------------- Reporter: goldfire | Owner: (none) Type: task | Status: new Priority: normal | Milestone: Component: Compiler | Version: 7.10.3 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 tdammers): Replying to [comment:59 simonpj]:
So the allocations are really close. Where does the extra time go?
Can you show mutator and GC times? Maybe residency, and hence GC time, is higher? Perhaps just an accident of the moments at which major GC happens. What happens if you use use just one generation?
I've done a run with `-s`, which gives us: {{{ --- ./cases/Grammar.hs --- 4eb140f564: 12.31 sec, max res. 257,842,544 8ac966971e: 12.70 sec, max res. 425,496,520 8a6aa5030d: 12.31 sec, max res. 254,680,256 --- ./cases/test_rules2.hs --- 4eb140f564: 1.11 sec, max res. 84,030,624 8ac966971e: 1.14 sec, max res. 81,325,072 8a6aa5030d: 1.09 sec, max res. 56,322,200 }}} So it looks like your hunch was about right: in the Grammar.hs case, max residency almost doubles in `8ac...`, but `8a6` then gets us back to normal; for the test_rules2.hs case, we see only improvement. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/11735#comment:69 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler