
#15418: Performance drop 60 times on non-profiling binary -------------------------------------+------------------------------------- Reporter: hth313 | Owner: (none) Type: bug | Status: infoneeded Priority: high | Milestone: 8.8.1 Component: Runtime System | Version: 8.4.3 Resolution: | Keywords: Operating System: MacOS X | Architecture: x86_64 Type of failure: Runtime | (amd64) performance bug | Test Case: Blocked By: | Blocking: Related Tickets: #14414, #9599 | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Comment (by osa1): To be honest I don't think that'd be helpful. Normally for this I'd start with comparing Core outputs of the program, with and without profiling flags. I think it's very likely that this will be enough to see why profiled version is faster. Btw, looking at the previous comments I realized that we didn't check different optimisation parameters. One of the reasons why sometimes profiling builds are faster is because profiling sometimes inhibits some optimisations (as it changes Core of the program), and optimisations sometimes make some programs slower. Could you try building your program without profiling, and with different optimisation settings? Please report numbers for: - -O0 - -O1 (default when using cabal) - -O2 If you're using cabal add these to `ghc-options` in your .cabal file. Depending on the numbers you can then try to disable individual optimisation passes (see the user manual or man page) etc. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/15418#comment:17 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler