[GHC] #9520: Running an action twice uses much more memory than running it once
GHC
ghc-devs at haskell.org
Fri Sep 23 15:07:50 UTC 2016
#9520: Running an action twice uses much more memory than running it once
-------------------------------------+-------------------------------------
Reporter: snoyberg | Owner:
Type: bug | Status: closed
Priority: normal | Milestone:
Component: Compiler | Version: 7.8.3
Resolution: invalid | Keywords:
Operating System: Linux | Architecture: x86_64
Type of failure: Runtime | (amd64)
performance bug | Test Case:
Blocked By: | Blocking:
Related Tickets: #8457 | Differential Rev(s):
Wiki Page: |
-------------------------------------+-------------------------------------
Changes (by edsko):
* status: new => closed
* resolution: => invalid
Comment:
Ok, I believe there is no ghc bug here, although admittedly these issues
are incredibly subtle. The memory leak comes from the full laziness
optimization, as @int-e points out. The interaction with -fprof-auto that
I observed comes from interaction of cost centres with the state hack. And
the difference between Michael's two examples turns out to be unimportant;
if you split example one into two separate modules so that the optimizer
gets less change to optimize the heck out of it, the memory behaviour of
both examples is identical.
I've written a long blog post that explores these issues in great detail;
will publish soon.
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/9520#comment:13>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list