[GHC] #10717: fannkuch-redux allocations increase 10000% between 7.4.2 and 7.6.3

#10717: fannkuch-redux allocations increase 10000% between 7.4.2 and 7.6.3
-------------------------------------+-------------------------------------
Reporter: bgamari | Owner:
Type: bug | Status: new
Priority: normal | Milestone: 7.12.1
Component: Compiler | Version: 7.6.3
Keywords: | Operating System: Unknown/Multiple
Architecture: | Type of failure: Runtime
Unknown/Multiple | performance bug
Test Case: | Blocked By:
Blocking: | Related Tickets:
Differential Revisions: |
-------------------------------------+-------------------------------------
In a recent look at [http://home.smart-cactus.org/~ben/nofib.html
historical] nofib trends I noticed that fannkuck-redux appears to regress
an almost unbelievable amount in its allocations,
== 7.6.3 ==
{{{
<

#10717: fannkuch-redux allocations increase by factor of 10000 between 7.4.2 and 7.6.3 -------------------------------------+------------------------------------- Reporter: bgamari | Owner: Type: bug | Status: new Priority: normal | Milestone: 7.12.1 Component: Compiler | Version: 7.6.3 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Runtime | Unknown/Multiple performance bug | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Revisions: -------------------------------------+------------------------------------- -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/10717#comment:1 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#10717: fannkuch-redux allocations increase by factor of 10000 between 7.4.2 and 7.6.3 -------------------------------------+------------------------------------- Reporter: bgamari | Owner: Type: bug | Status: new Priority: normal | Milestone: 7.12.1 Component: Compiler | Version: 7.6.3 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Runtime | Unknown/Multiple performance bug | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Revisions: -------------------------------------+------------------------------------- Comment (by simonpj): Yes, please investigate!! -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/10717#comment:2 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#10717: fannkuch-redux allocations increase by factor of 10000 between 7.4.2 and 7.6.3 -------------------------------------+------------------------------------- Reporter: bgamari | Owner: Type: bug | Status: new Priority: normal | Milestone: 7.12.1 Component: Compiler | Version: 7.6.3 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Runtime | Unknown/Multiple performance bug | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Revisions: -------------------------------------+------------------------------------- Comment (by bgamari): I'm now looking at the ticky output from the testcase run with argument `11` after having confirmed that compiling with `-prof` kills the effect (both compilers produce executables which allocate heavily). The ticky output shows a pretty clear difference. == 7.6 == {{{ ENTERS: 1178454454 of which 1178454454 (100.0%) direct to the entry code [the rest indirected via Node's info ptr] 36288010 ( 3.1%) thunks 0 ( 0.0%) data values 0 ( 0.0%) normal indirections 0 ( 0.0%) permanent indirections ... RETURNS: 354136250 36288000 ( 10.2%) from entering a new constructor [the rest from entering an existing constructor] UPDATE FRAMES: 36288007 (0 omitted from thunks) ... Entries Allocs Arity Stack Kinds Function -------------------------------------------------------------------------------- ... 39916804 108864012 4 0 iiiA $wa3{v s3Cl} (main:Main) }}} == 7.4 == {{{ ENTERS: 1142166456 of which 1142166456 (100.0%) direct to the entry code [the rest indirected via Node's info ptr] 10 ( 0.0%) thunks 0 ( 0.0%) data values 0 ( 0.0%) normal indirections 0 ( 0.0%) permanent indirections ... RETURNS: 317848252 0 ( 0.0%) from entering a new constructor [the rest from entering an existing constructor] UPDATE FRAMES: 7 (0 omitted from thunks) ... Entries Allocs Arity Stack Kinds Function -------------------------------------------------------------------------------- ... 39916804 12 4 0 iiiA $wa3{v s3ad} (main:Main) }}} -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/10717#comment:3 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#10717: fannkuch-redux allocations increase by factor of 10000 between 7.4.2 and 7.6.3 -------------------------------------+------------------------------------- Reporter: bgamari | Owner: Type: bug | Status: new Priority: normal | Milestone: 7.12.1 Component: Compiler | Version: 7.6.3 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Runtime | Unknown/Multiple performance bug | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Revisions: -------------------------------------+------------------------------------- Comment (by bgamari): [https://gist.github.com/bgamari/4b64d9d845933fed712c Here] are the STG definitions of the `s3Cl` and `s3ad`. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/10717#comment:4 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#10717: fannkuch-redux allocations increase by factor of 10000 between 7.4.2 and 7.6.3 -------------------------------------+------------------------------------- Reporter: bgamari | Owner: Type: bug | Status: new Priority: normal | Milestone: 7.12.1 Component: Compiler | Version: 7.6.3 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Runtime | Unknown/Multiple performance bug | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Revisions: -------------------------------------+------------------------------------- Comment (by simonpj): Don't forget to check for which rules fired `-fddump-rule-firings`. Missing a fusion rule is a big deal -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/10717#comment:5 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#10717: fannkuch-redux allocations increase by factor of 10000 between 7.4.2 and 7.6.3 -------------------------------------+------------------------------------- Reporter: bgamari | Owner: Type: bug | Status: new Priority: normal | Milestone: 7.12.1 Component: Compiler | Version: 7.6.3 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Runtime | Unknown/Multiple performance bug | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Revisions: -------------------------------------+------------------------------------- Comment (by rwbarton): This was discussed in #7367 though without a real conclusion. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/10717#comment:6 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#10717: fannkuch-redux allocations increase by factor of 10000 between 7.4.2 and 7.6.3 -------------------------------------+------------------------------------- Reporter: bgamari | Owner: Type: bug | Status: new Priority: normal | Milestone: 7.12.1 Component: Compiler | Version: 7.6.3 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Runtime | Unknown/Multiple performance bug | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Revisions: -------------------------------------+------------------------------------- Comment (by simonpj): Oh yes -- so this is essential a duplicate ticket? If so let's close in favour of the longer discussion there -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/10717#comment:7 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#10717: fannkuch-redux allocations increase by factor of 10000 between 7.4.2 and 7.6.3 -------------------------------------+------------------------------------- Reporter: bgamari | Owner: Type: bug | Status: closed Priority: normal | Milestone: 7.12.1 Component: Compiler | Version: 7.6.3 Resolution: duplicate | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Runtime | Unknown/Multiple performance bug | Test Case: Blocked By: | Blocking: Related Tickets: #7367 | Differential Revisions: -------------------------------------+------------------------------------- Changes (by bgamari): * status: new => closed * resolution: => duplicate * related: => #7367 Comment: Finally getting back to this after my ISP decided to "fix" my connection. Hmmm, I sometimes do wish Trac's search were a bit better. Closing in favor of #7367. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/10717#comment:8 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler
participants (1)
-
GHC