Parallel generational-copying garbage collection with a block-structured heap
Simon Marlow, Tim Harris, Roshan P. James, Simon Peyton Jones, International Symposium
on Memory Management 2008.
We present a parallel generational-copying garbage collector
implemented for the Glagsow Haskell Compiler. We use a
block-structured memory allocator, which provides a natural
granularity for dividing the work of GC between many threads, leading
to a simple yet effective method for parallelising copying GC. The
results are encouraging: we demonstrate wall-clock speedups of on
average a factor of 2 in GC time on a commodity 4-core machine with no
programmer intervention, compared to our best sequential GC.