Garbage Collection Should Be Lifetime Aware

We argue that garbage collection should be more closely tied to object demographics. We show that this behaviour is sufficiently distinctive to make exploitation feasible and describe a novel GC framework that exploits object lifetime analysis yet tolerates imprecision. We argue for future collectors based on combinations of approximate analyses and dynamic sampling.

[1]  Timothy L. Harris,et al.  Dynamic adaptive pre-tenuring , 2000, ISMM '00.

[2]  Kathryn S. McKinley,et al.  Beltway: getting around garbage collection gridlock , 2002, PLDI '02.

[3]  Darko Stefanovic,et al.  Properties of age-based automatic memory reclamation algorithms , 1999 .

[4]  Peter Lee,et al.  Generational stack collection and profile-driven pretenuring , 1998, PLDI.

[5]  Robert P. Fitzgerald,et al.  The case for profile-directed selection of garbage collectors , 2000, ISMM '00.

[6]  D. Brillinger,et al.  Handbook of methods of applied statistics , 1967 .

[7]  Chandra Krintz,et al.  Dynamic selection of application-specific garbage collectors , 2004, ISMM '04.

[8]  Kathryn S. McKinley,et al.  Age-based garbage collection , 1999, OOPSLA '99.

[9]  Marina MeWi Comparing Clusterings , 2002 .

[10]  Chandra Krintz,et al.  Online phase detection algorithms , 2006, International Symposium on Code Generation and Optimization (CGO'06).

[11]  Kathryn S. McKinley,et al.  Pretenuring for Java , 2001, OOPSLA '01.

[12]  William D. Clinger,et al.  An experimental study of renewal-older-first garbage collection , 2002, ICFP '02.

[13]  Mooly Sagiv,et al.  Estimating the impact of heap liveness information on space consumption in Java , 2002, ISMM '02.

[14]  David M. Ungar,et al.  Generation Scavenging: A non-disruptive high performance storage reclamation algorithm , 1984, SDE 1.

[15]  Amer Diwan,et al.  Understanding the connectivity of heap objects , 2002, ISMM '02.

[16]  Kathryn S. McKinley,et al.  Error-free garbage collection traces: how to cheat and not get caught , 2002, SIGMETRICS '02.

[17]  Perry Cheng,et al.  Oil and water? High performance garbage collection in Java with MMTk , 2004, Proceedings. 26th International Conference on Software Engineering.