DocumentCode
1663412
Title
Selective optimization of locks by runtime statistics and just-in-time compilation
Author
Odaira, Ray ; Hiraki, Kei
Author_Institution
Univ. of Tokyo, Japan
fYear
2003
Abstract
In server-side Java, system routines of a JVM are invoked frequently from various locations in Java bytecode. Thus in order to achieve high performance, it is necessary to do system-level optimization that is adaptive to each invocation site in bytecode. In this paper, we propose a method called SSJIT (System-level dynamic optimization using runtime Statistics and a JIT compiler). SSJIT detects bottlenecks of a system using runtime statistics. Then it JIT-compiles the methods containing system-routine invocations related to the bottlenecks and optimizes each invocation. In this paper, we target a contention problem of mutex locks, which degrades throughput or fairness of a server. SSJIT detects contended locks by runtime statistics, and then invokes a JIT compiler. The compiler inline-expands the lock code that is modified to delay preemption during the critical section, which obviates contention. We evaluated SSJIT by measuring throughput, fairness, and reduced overhead compared with existing lock protocols.
Keywords
Java; program compilers; protocols; Java bytecode; Java virtual machines; SSKT; fairness; invocation site; just-in-time compilation; lock protocols; runtime statistics; selective optimization; server-side Java; system-level optimization; system-routine invocations; throughput; Degradation; Delay; Instruments; Java; Libraries; Optimizing compilers; Runtime; Statistics; Throughput; Yarn;
fLanguage
English
Publisher
ieee
Conference_Titel
Parallel and Distributed Processing Symposium, 2003. Proceedings. International
ISSN
1530-2075
Print_ISBN
0-7695-1926-1
Type
conf
DOI
10.1109/IPDPS.2003.1213259
Filename
1213259
Link To Document