#3941: GC: excess of reserved space for bitmaps in case of mark/compact/sweep
---------------------------------+------------------------------------------
Reporter: gabrielrf | Owner:
Type: bug | Status: new
Priority: normal | Component: Runtime System
Version: 6.10.4 | Keywords:
Os: Unknown/Multiple | Testcase:
Architecture: Unknown/Multiple | Failure: None/Unknown
---------------------------------+------------------------------------------
No malfunction involved.
in GC.c, function init_collected_gen(..)
(for generation_steps; if stp->mark)
allocation
bitmap_size = stp->n_old_blocks * (BLOCK_SIZE /
(sizeof(W_)*BITS_PER_BYTE))
while block bitmap space is assigned (correctly I think) in increments of
bitmap += BLOCK_SIZE_W / (sizeof(W_)*BITS_PER_BYTE);
so BLOCK_SIZE_W should replace BLOCK_SIZE in bitmap_size calculation for
allocation.
it will result in a gain of (sizeof(W_) -1) * BLOCK_SIZE_W /
(sizeof(W_)*BITS_PER_BYTE) per block
--
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/3941>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
_______________________________________________
Glasgow-haskell-bugs mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs