Michael C. Jaeger, Alberto Messina, et al.
CLOSER 2013
Garbage collectors of the mark-sweep family may suffer from memory fragmentation and require the use of compaction. Known compaction methods are expensive and work while program activity is stopped, so that compaction is often a major contributor to garbage collection pause times. We present a parallel incremental compaction algorithm that reduces pause times by working in parallel and evacuating a part of the heap when the program threads are stopped for garbage collection. Our algorithm works with collectors based on mark-sweep, including mostly concurrent collectors. We have implemented a prototype of our algorithm as part of the garbage collector in the IBM JVM. Measurements of our prototype show that even with the most simple-minded policies, e.g., for choosing the area to evacuate, parallel incremental compaction can successfully reduce maximum garbage collection pause times with a minimal performance penalty.
Michael C. Jaeger, Alberto Messina, et al.
CLOSER 2013
Gil Vernik, Michael Factor, et al.
SoCC 2017
Nikoletta Mavrogeorgi, Vasileios Alexandrou, et al.
3PGCIC 2013
Ori Ben-Yitzhak, Irit Goft, et al.
ISMM 2002