[GHC] #3462: New codegen: allocate large objects using
allocateLocal()
GHC
trac at galois.com
Tue Aug 25 04:48:43 EDT 2009
#3462: New codegen: allocate large objects using allocateLocal()
-------------------------------+--------------------------------------------
Reporter: simonmar | Owner:
Type: task | Status: new
Priority: normal | Milestone: 6.14.1
Component: Compiler | Version: 6.11
Severity: normal | Keywords:
Difficulty: Unknown | Testcase:
Os: Unknown/Multiple | Architecture: Unknown/Multiple
-------------------------------+--------------------------------------------
See #3424.
In the new code generator, we should allocate large objects (larger than F
* block size, for some suitable fraction F) using the RTS
`allocateLocal()` API rather than from the nursery. It works to allocate
them from the nursery -- this is what GHC 6.12 does after the fix in #3424
-- but then they will not be treated as large objects and will be copied
during GC. Also, the allocation is likely to fail, requiring a trip
through the RTS to put a large enough block in the nursery to satisfy the
allocation.
--
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/3462>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the Glasgow-haskell-bugs
mailing list