Garbage-First Garbage Collection (and a Related Compiler Optimizaton)
- David Detlefs | Sun Microsystems, Principal Investigator, Java Technology Research Group
Garbage-First is a server-style garbage collector, targeted for multi-processors with large memories, that meets a “soft real-time goal” with high probability, while achieving high throughput. Whole-heap operations, such as global marking, are performed concurrently with mutation, to prevent interruptions proportional to heap or live-data size. Concurrent marking both provides collection “completeness” and identifies regions ripe for reclamation via compacting evacuation. This evacuation is performed in parallel on multiprocessors, to increase throughput.
I will also describe some compiler work in support of concurrent marking. The snapshot-at-the-beginning style of concurrent marking has several advantages over the incremental update alternative, but one main disadvantage: it requires the mutator to execute a significantly more expensive write barrier. We demonstrate that a large fraction of these write barriers are unnecessary, and may be eliminated by static analysis.
(From papers at ISMM 2004 and CGO 2005)
-
-
Jeff Running
-
Watch Next
-
-
Dion2: A new simple method to shrink matrix in Muon
- Anson Ho,
- Kwangjun Ahn
-
-
-
-
-
-
-
-