skip to main content
10.1145/1294325.1294353acmconferencesArticle/Chapter ViewAbstractPublication PagespppjConference Proceedingsconference-collections
Article

Towards intelligent analysis techniques for object pretenuring

Published: 05 September 2007 Publication History

Abstract

Object pretenuring involves the identification of long-lived objects at or before their instantiation. It is a key optimization for generational garbage collection systems, which are standard in most high performance Java virtual machines. This paper presents a new study of factors that are used to indicate object lifespans. We adopt the information theory measurement of normalized mutual information to compare these various different factors in a common framework. A study of garbage collection traces from four standard Java benchmark programs shows that there is high dependence on some of these factors such as allocation site and object type. We also identify and measure new factors based on object-oriented metrics.

References

[1]
B. Alpern et al. The Jalapeño virtual machine. IBM Systems Journal, 39(1):211--238, Feb 2000.
[2]
B. Alpern et al. The Jikes research virtual machine project: Building an open source research community. IBM Systems Journal, 44(2):1--19, Feb 2005.
[3]
D. A. Barrett and B. G. Zorn. Using lifetime predictors to improve memory allocation performance. In PLDI, pages 187--196, 1993.
[4]
S. M. Blackburn, P. Cheng, and K. S. McKinley. Oil and water? High performance garbage collection in Java with MMTk. In ICSE, pages 137--146, 2004.
[5]
S. M. Blackburn, M. Hertz, K. S. Mckinley, J. E. B. Moss, and T. Yang. Profile-based pretenuring. ACM Transactions on Programming Languages and Systems, 29(1):1--57, 2007.
[6]
S. M. Blackburn, S. Singhai, M. Hertz, K. S. McKinley, and J. E. B. Moss. Pretenuring for Java. In OOPSLA, pages 342--352, 2001.
[7]
P. Cheng, R. Harper, and P. Lee. Generational stack collection and profile-driven pretenuring. In PLDI, pages 162--173, 1998.
[8]
S. Chidamber and C. Kemerer. A metrics suite for object oriented design. IEEE Transactions on Software Engineering, 20(6):476--493, 1994.
[9]
T. L. Harris. Dynamic adaptive pre-tenuring. In ISMM, pages 127--136, 2000.
[10]
M. Hirzel, J. Henkel, A. Diwan, and M. Hind. Understanding the connectivity of heap objects. In ISMM, pages 36--49, 2002.
[11]
W. Huang, W. Srisa-an, and J. M. Chang. Dynamic pretenuring schemes for generational garbage collection. In IEEE International Symposium on Performance Analysis of Systems and Software, pages 133--140, 2004.
[12]
H. Inoue, D. Stefanovic, and S. Forrest. On the prediction of Java object lifetimes. IEEE Transactions on Computers, 55(7):880--892, 2006.
[13]
R. Jones and R. Lins. Garbage Collection: Algorithms for Automatic Dynamic Memory Management. Wiley, 1996.
[14]
M. Jump, S. M. Blackburn, and K. S. McKinley. Dynamic object sampling for pretenuring. In ISMM, pages 152--162, 2004.
[15]
M. L. Seidl and B. G. Zorn. Segregating heap objects by reference behavior and lifetime. In ASPLOS, pages 12--23, 1998.
[16]
Y. Shuf, M. Gupta, R. Bordawekar, and J. P. Singh. Exploiting prolific types for memory management and optimizations. In POPL, pages 295--306, 2002.
[17]
D. Spinellis. ckjm---Chidamber and Kemerer Java metrics, 2005. http://www.spinellis.gr/sw/ckjm/.
[18]
D. Ungar. Generation scavenging: A non-disruptive high performance storage reclamation algorithm. In Proceedings of the First ACM SIGSOFT/SIGPLAN Software Engineering Symposium on Practical Software Development Environments, pages 157--167, 1984.

Cited By

View all

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
PPPJ '07: Proceedings of the 5th international symposium on Principles and practice of programming in Java
September 2007
260 pages
ISBN:9781595936721
DOI:10.1145/1294325
  • General Chair:
  • Vasco Amaral
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: 05 September 2007

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. information theory
  2. object lifetime analysis
  3. pretenuring

Qualifiers

  • Article

Conference

PPPJ07
Sponsor:

Acceptance Rates

Overall Acceptance Rate 29 of 58 submissions, 50%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)2
  • Downloads (Last 6 weeks)0
Reflects downloads up to 25 Dec 2024

Other Metrics

Citations

Cited By

View all

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media