[GHC] #698: GHC's internal memory allocator never releases
memory back to the OS
GHC
trac at galois.com
Tue Sep 22 18:39:08 EDT 2009
#698: GHC's internal memory allocator never releases memory back to the OS
---------------------------------+------------------------------------------
Reporter: guest | Owner: igloo
Type: bug | Status: new
Priority: low | Milestone: 6.12 branch
Component: Runtime System | Version: 6.4.1
Severity: normal | Resolution:
Keywords: | Difficulty: Moderate (1 day)
Testcase: N/A | Os: Unknown/Multiple
Architecture: Unknown/Multiple |
---------------------------------+------------------------------------------
Comment (by crutcher):
meh. This page (pointed to by the code and the wiki) is absent:
http://hackage.haskell.org/trac/ghc/wiki/Commentary/Rts/Storage/GC
All of this comes down to the need for a process which, given a target X
of memory to free, comes as close as reasonably possible to doing so.
The simplest approach would be to release free blocks and megablocks until
X is satisfied, or there are no more candidate blocks or megablocks. This
will likely give us reasonable behavior in the allocBytes case, but
without some form of compaction, this doesn't really solve the larger
problem.
I don't understand the garbage collector well enough yet, but I imagine we
could entice it or some of its machinery to clear our candidate blocks for
us. I'll keep reading :P
--
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/698#comment:20>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the Glasgow-haskell-bugs
mailing list