Nothing Special   »   [go: up one dir, main page]

skip to main content
10.1145/349299.349334acmconferencesArticle/Chapter ViewAbstractPublication PagespldiConference Proceedingsconference-collections
Article
Free access

Contaminated garbage collection

Published: 01 May 2000 Publication History

Abstract

We describe a new method for determining when an object can be garbage collected. The method does not require marking live objects. Instead, each object X is dynamically associated with a stack frame M, such that Xis collectable when M pops. Because X could have been dead earlier, our method is conservative. Our results demonstrate that the method nonetheless identifies a large percentage of collectable objects. The method has been implemented in Sun's Java Virtual Machine interpreter, and results are presented based on this implementation

References

[1]
A.V. Aho, R. Sethi, and J.D. Ullman. Compilers: Principles, Techniques, and Tools. Addison-Wesley, Reading, Mass., 1986.
[2]
Andrew Appel. Empirical and analytic study of stack versus heap cost for languages with closures. Journal of Functional Programming, 6(1):47-74, 1996.
[3]
Hans-Juergen Boehm. Space efficient conservative garbage collection. SIGPLAN Notices, 28(6):197- 206, June 1993. Proceedings of the A CM SIGPLAN '93 Conference on Programming Language Design and Implementation.
[4]
US Census. Tiger mapping service, the "coast to coast" digital map database. Technical report, US Census Bureau, 1999. http://tiger.census.gov/.
[5]
D. R. Chase. Garbage Collection and Other Optimizations. PhD thesis, Dept. of Computer Sci., Rice U., Houston, TX, August 1987.
[6]
Trishul Chilimbi and James Larus. Using generational garbage collection to implement cache-conscious data placement. Proceedings of the International Symposium on Memory Management, 1998.
[7]
Thomas H. Cormen, Charles E. Leiserson, and Ronald L. Rivest. Introduction to Algorithms. The MIT Press, Cambridge, Mass., 1990.
[8]
SPEC Corporation. Java spec benchmarks. Technical report, SPEC, 1999. Available by purchase from SPEC.
[9]
Scott Haug. Automatic storage optimization via garbage collection. Master's thesis, Washington University, 1999.
[10]
Richard L. Hudson, Ron Morrison, J. Eliot B. Moss, and David S. Munro. Garbage collecting the world: One car at a time. In OOPSLA '97 A CM Conference on Object-Oriented Systems, Languages and Applications Twelth Annual Conference, volume 32(10) of ACM SIGPLAN Notices. ACM Press, October 1997.
[11]
Tim Lindholm and Frank Yellin. The Java Virtual Machine Specification. Addison-Wesley, 1997.
[12]
Alastair Reid, John McCorquodale, Jason Baker, Wilson Hsieh, and Joseph Zachary. The need for predictable gc. Proceedings of the Second Workshop on Compiler Support for System Software, 1999.
[13]
Cristina Ruggieri and Thomas P. Murtagh. Lifetime analysis of dynamically allocated objects. In Conference Record of the Fifteenth Annual A CM Symposium on Principles of Programming Languages, pages 285-293, San Diego, California, January 1988.
[14]
Jacob Seligmann and Steffen Grarup. Incremental mature garbage collection using the train algorithm. Proceedings of ECOOP '95, pages 235-252, 1995.
[15]
Darko Stefanovic. Properties of Age-Based Automatic Memory Reclamation Algorithms. PhD thesis, University of Massachusetts, Amherst, 1999.
[16]
Mads Torte. A brief introduction to regions. Proceedings of the International Symposium on Memory Management (ISMM), pages 186-195, 1998.
[17]
Mads Tofte and Jean-Pierre Talpin. Implementation of the typed call-by-value A-calculus using a stack of regions. In Conference Record of POPL '94: 21st A CM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, pages 188-201, Portland, Oregon, January 1994.
[18]
Paul R. Wilson. Uniprocessor garbage collection techniques (Long Version). Submitted to ACM Computing Surveys, 1994.
[19]
Paul R. Wilson, Mark S. Johnstone, Michael Neely, and David Boles. Dynamic storage allocation: A survey and critical review. In Henry Baker, editor, Proceedings of International Workshop on Memory Management, volume 986 of Lecture Notes in Computer Science, Kinross, Scotland, September 1995. Springer-Verlag.
[20]
Kwang Keun Yi and Williams Ludwell Harrison. Interprocedural data flow analysis for compile-time memory management. Technical Report CSRD 1244, University of Illinois at Urbana-Champaign, Center for Supercomputing Research and Development, Urbana, IL 61801, USA, August 1992.

Cited By

View all

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
PLDI '00: Proceedings of the ACM SIGPLAN 2000 conference on Programming language design and implementation
August 2000
358 pages
ISBN:1581131992
DOI:10.1145/349299
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 01 May 2000

Permissions

Request permissions for this article.

Check for updates

Qualifiers

  • Article

Conference

PLDI00

Acceptance Rates

PLDI '00 Paper Acceptance Rate 30 of 173 submissions, 17%;
Overall Acceptance Rate 406 of 2,067 submissions, 20%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)74
  • Downloads (Last 6 weeks)12
Reflects downloads up to 14 Nov 2024

Other Metrics

Citations

Cited By

View all

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Get Access

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media