© University of Kent - Contact | Feedback | Legal | FOI | Cookies
Decrypting the Java gene pool: Predicting objects' lifetimes with micro-patterns
Sebastien Marion, Richard Jones, and Chris Ryder
In International Symposium on Memory Management (ISMM07), pages 182-196, Montreal, Canada, October 2007. ACM.Abstract
Pretenuring long-lived and immortal objects into infrequently or never collected regions reduces garbage collection costs significantly. However, extant approaches either require computationally expensive, application-specific, off-line profiling, or consider only allocation sites common to all programs, i.e. invoked by the virtual machine rather than application programs. In contrast, we show how a simple program analysis, combined with an object lifetime knowledge bank, can be exploited to match both runtime system and application program structure with object lifetimes. The complexity of the analysis is linear in the size of the program, so need not be run ahead of time. We obtain performance gains between 6-77% in GC time against a generational copying collector for several SPEC jvm98 programs.
Download publication 182 kbytes (PDF)Bibtex Record
@inproceedings{2596, author = {Sebastien Marion and Richard Jones and Chris Ryder}, title = {Decrypting The {J}ava Gene Pool: Predicting Objects' Lifetimes with Micro-patterns}, month = {October}, year = {2007}, pages = {182-196}, keywords = {determinacy analysis, Craig interpolants}, note = {}, doi = {}, url = {http://www.cs.kent.ac.uk/pubs/2007/2596}, publication_type = {inproceedings}, submission_id = {9912_1187197987}, address = {Montreal, Canada}, publisher = {ACM}, refereed = {yes}, booktitle = {International Symposium on Memory Management (ISMM07)}, }