Pretenuring for Java

Stephen M. Blackburn*, Sharad Singhai, Matthew Hertz, Kathryn S. McKinley, J. Eliot B. Moss

*Corresponding author for this work

Research output: Contribution to conferencePaperpeer-review

66 Citations (Scopus)

Abstract

Pretenuring can reduce copying costs in garbage collectors by allocating long-lived objects into regions that the garbage collector will rarely, if ever, collect. We extend previous work on pretenuring as follows. (1) We produce pretenuring advice that is neutral with respect to the garbage collector algorithm and configuration. We thus can and do combine advice from different applications. We find that predictions using object lifetimes at each allocation site in Java programs are accurate, which simplifies the pretenuring implementation. (2) We gather and apply advice to applications and the Jalapeño JVM, a compiler and run-time system for Java written in Java. Our results demonstrate that building combined advice into Jalapeño from different application executions improves performance regardless of the application Jalapeño is compiling and executing. This build-time advice thus gives user applications some benefits of pretenuring without any application profiling. No previous work pretenures in the run-time system. (3) We find that application-only advice also improves performance, but that the combination of build-time and application-specific advice is almost always noticeably better. (4) Our same advice improves the performance of generational and Older First collection, illustrating that it is collector neutral.

Original languageEnglish
Pages342-352
Number of pages11
DOIs
Publication statusPublished - 2001
Externally publishedYes
EventConference on Object-Oriented Programming, Systems, Languages and Applications (OOPSLA 2001) - Tampa Bay, FL, United States
Duration: 14 Oct 200118 Oct 2001

Conference

ConferenceConference on Object-Oriented Programming, Systems, Languages and Applications (OOPSLA 2001)
Country/TerritoryUnited States
CityTampa Bay, FL
Period14/10/0118/10/01

Fingerprint

Dive into the research topics of 'Pretenuring for Java'. Together they form a unique fingerprint.

Cite this