DocumentCode
2814470
Title
Relational profiling: enabling thread-level parallelism in virtual machines
Author
Heil, Timothy ; Smith, James E.
Author_Institution
Wisconsin Univ., Madison, WI, USA
fYear
2000
fDate
2000
Firstpage
281
Lastpage
290
Abstract
Virtual machine service threads can perform many tasks in parallel with program execution such as garbage collection, dynamic compilation, and profile collection and analysis. Hardware-assisted profiling is essential for providing service threads with needed information in a flexible and efficient way. A relational profiling architecture (RPA) is proposed for meeting this goal. The RPA selects particular instructions for profiling, and communicates collected information to service threads through shared memory message queues. The RPA´s capabilities lead to new profiling applications, such as concurrent garbage collection. Simulations indicate that a low-cost implementation of the RPA should be able to profile four in-flight instructions simultaneously, and provide storage for eight profile records. Profiling overhead is less than 0.5% for concurrent garbage collection and edge profiling
Keywords
program compilers; storage management; virtual machines; concurrent garbage collection; dynamic compilation; edge profiling; garbage collection; hardware-assisted profiling; in-flight instructions; profile collection and analysis; program execution; relational profiling; relational profiling architecture; service threads; thread-level parallelism; virtual machines; Application software; Computer architecture; Dynamic compiler; Hardware; Multithreading; Performance analysis; Virtual machining; Virtual manufacturing; Voice mail; Yarn;
fLanguage
English
Publisher
ieee
Conference_Titel
Microarchitecture, 2000. MICRO-33. Proceedings. 33rd Annual IEEE/ACM International Symposium on
Conference_Location
Monterey, CA
ISSN
1072-4451
Print_ISBN
0-7695-0924-X
Type
conf
DOI
10.1109/MICRO.2000.898078
Filename
898078
Link To Document