Connectivity-based garbage collection

Martin Hirzel, Amer Diwan, Matthew Hertz
2003 Proceedings of the 18th ACM SIGPLAN conference on Object-oriented programing, systems, languages, and applications - OOPSLA '03  
Hirzel, Martin (Ph.D., Computer Science) "Connectivity-Based Garbage Collection" Thesis directed by Amer Diwan Garbage collection is an important feature of modern programming languages: by liberating the programmer from the responsibility of freeing up unused memory by hand, it leads to code with fewer bugs and a cleaner design. However, these software engineering benefits have their costs: garbage collection may incur disruptive pauses, slowdowns, and increased memory requirements. This
more » ... tation presents a novel family of garbage collection algorithms that use information about the connectivity of heap objects to reduce these costs. This dissertation firsts presents empirical data showing that connectivity information is a good indicator for when objects die. Then, it describes connectivitybased garbage collection, a new family of garbage collectors that exploit connectivity properties to yield short pause times, good throughput, and low memory footprint. It explores the performance of a variety of connectivity-based garbage collectors in a simulator. These collectors rely on an analysis of object connectivity; this dissertation describes the first non-trivial pointer analysis that handles all of Java, including dynamic class loading, reflection, and native code. The dissertation concludes by describing the design and implementation of a connectivity-based garbage collector in a Java virtual machine, using the pointer analysis.
doi:10.1145/949305.949337 dblp:conf/oopsla/HirzelDH03 fatcat:e6polgizfbgvjeq65vb6gaqoou