© University of Kent - Contact | Feedback | Legal | Cookies
The University of Kent, Canterbury, Kent, CT2 7NZ, T +44 (0)1227 764000
Long-running, heavily multi-threaded, Java server applications make stringent demands of garbage collector (GC) performance. Synchronisation of all application threads before garbage collection is a significant bottleneck for JVMs that use native threads.
We present a new static analysis and a novel GC framework designed to address this issue by allowing independent collection of thread-local heaps. In contrast to previous work, our solution safely classifies objects even in the presence of dynamic class loading, requires neither write-barriers that may do unbounded work, nor synchronisation, nor locks during thread-local collections; our analysis is sufficiently fast to permit its integration into a high-performance, production-quality virtual machine.
This paper is a shorter version of our
technical report.
Download publication
128 kbytes
(PDF)
@inproceedings{2228,
author = {Richard Jones and Andy King},
title = {A Fast Analysis for Thread-Local Garbage Collection with Dynamic Class Loading},
month = {September},
year = {2005},
pages = {129-138},
keywords = {Garbage collection, escape analysis, synchronisation},
note = {},
doi = {},
url = {http://www.cs.kent.ac.uk/pubs/2005/2228},
ISBN = {0-7695-2292-0},
publication_type = {inproceedings},
submission_id = {8365_1120038689},
booktitle = {Fifth IEEE International Workshop on Source Code Analysis and Manipulation},
address = {Budapest},
publisher = {IEEE Computer Society},
refereed = {yes},
}