Abstract
In the presence of on-chip multithreading, a Virtual Machine (VM) can readily take advantage of service threads for enhancing performance by executing tasks such as profile collection and analysis, dynamic optimization, and garbage collection concurrently with program execution. In this context, a hardware- assisted profiling mechanism is proposed. The Relational Profiling Architecture (RPA) is designed from the top down. RPA is based on a relational model similar to the relational database model. Instructions selected for profiling produce a record of information. A simple query engine examines these records for patterns, and communicates matching records to service threads. The power and flexibility of RPA is demonstrated by developing a concurrent generational garbage collector for Java. Detailed execution-driven simulations show that this collector has an average runtime overhead of 0.6%. The short pauses in the application required for synchronization with the garbage collector are at most 53µs, given a 1GHz clock frequency.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2002 Springer Science+Business Media New York
About this chapter
Cite this chapter
Heil, T., Smith, J.E. (2002). Concurrent Garbage Collection Using Hardware-Assisted Profiling. In: Narayanan, V., Wolczko, M.I. (eds) Java Microarchitectures. The Springer International Series in Engineering and Computer Science, vol 679. Springer, Boston, MA. https://doi.org/10.1007/978-1-4615-0993-6_8
Download citation
DOI: https://doi.org/10.1007/978-1-4615-0993-6_8
Publisher Name: Springer, Boston, MA
Print ISBN: 978-1-4613-5341-6
Online ISBN: 978-1-4615-0993-6
eBook Packages: Springer Book Archive