An experimental study of renewal-older-first garbage collection

Generational collection has improved the efficiency of garbage collection in fast-allocating programs by focusing on collecting young garbage, but has done little to reduce the cost of collecting a heap containing large amounts of older data. A new generational technique, older-first collection, shows promise in its ability to manage older data.This paper reports on an implementation study that compared two older-first collectors to traditional (younger-first) generational collectors. One of the older-first collectors performed well and was often effective at reducing the first-order cost of collection relative to younger-first collectors. Older-first collectors perform especially well when objects have queue-like or random lifetimes.

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

[2]  B. MossJ.Eliot,et al.  Older-first garbage collection in practice , 2002 .

[3]  William D. Clinger,et al.  Lambda, the ultimate label or a simple optimizing compiler for Scheme , 1994, LFP '94.

[4]  Richard D. Greenblatt,et al.  LISP Machine Progress Report. , 1977 .

[5]  Jay Earley,et al.  An efficient context-free parsing algorithm , 1970, Commun. ACM.

[6]  Henry G. Baker,et al.  The Boyer benchmark meets linear logic , 1993, LIPO.

[7]  Darko Stefanovic,et al.  Characterization of object behaviour in Standard ML of New Jersey , 1994, LFP '94.

[8]  J. Moss,et al.  Older-first garbage collection in practice: evaluation in a Java Virtual Machine , 2003, MSP '02.

[9]  Darko Stefanovic,et al.  A comparative performance evaluation of write barrier implementation , 1992, OOPSLA.

[10]  David A. Moon,et al.  Garbage collection in a large LISP system , 1984, LFP '84.

[11]  R. Kent Dybvig,et al.  Revised5 Report on the Algorithmic Language Scheme , 1986, SIGP.

[12]  J. Eliot B. Moss,et al.  Incremental Collection of Mature Objects , 1992, IWMM.

[13]  Jacques Cohen,et al.  Garbage Collection of Linked Data Structures , 1981, CSUR.

[14]  William D. Clinger,et al.  Generational garbage collection and the radioactive decay model , 1997, PLDI '97.

[15]  Barry Hayes,et al.  Using key object opportunism to collect old objects , 1991, OOPSLA '91.

[16]  Henry G. Baker,et al.  Infant mortality and generational garbage collection , 1993, SIGP.

[17]  Simon L. Peyton Jones,et al.  Generational garbage collection for Haskell , 1993, FPCA '93.

[18]  Lars Thomas Hansen,et al.  Older-First Garbage Collection in Practice , 2000 .

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

[20]  Richard P. Gabriel,et al.  Performance and evaluation of Lisp systems , 1985 .

[21]  Henry Lieberman,et al.  A real-time garbage collector based on the lifetimes of objects , 1983, CACM.

[22]  Henry G. Baker,et al.  The Boyer Benchmark at warp speed , 1992 .

[23]  David R. Hanson,et al.  Storage management for an implementation of SNOBOL4 , 1977, Softw. Pract. Exp..

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

[25]  Scott Nettles,et al.  A study of large object spaces , 1998, ISMM '98.

[26]  Tom Moher,et al.  Design of the opportunistic garbage collector , 1989, OOPSLA 1989.

[27]  Rafael Dueire Lins,et al.  Garbage collection: algorithms for automatic dynamic memory management , 1996 .

[28]  Harold Abelson,et al.  Revised5 report on the algorithmic language scheme , 1998, SIGP.

[29]  Robert Hieb,et al.  Revised 5 Report on the Algorithmic Language , 1999 .

[30]  Daniel G. Bobrow,et al.  An efficient, incremental, automatic garbage collector , 1976, CACM.

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

[32]  Steffen Grarup,et al.  Incremental Mature Garbage Collection Using the Train Algorithm , 1995, ECOOP.

[33]  Microcomputer Standards Subcommittee IEEE standard for the Scheme programming language , 1991 .

[34]  Paul R. Wilson,et al.  Uniprocessor Garbage Collection Techniques , 1992, IWMM.

[35]  Chris J. Cheney A nonrecursive list compacting algorithm , 1970, Commun. ACM.