Title :
Impact of JIT/JVM optimizations on JAVA application performance
Author :
Shiv, K. ; Iyer, R. ; Newburn, C. ; Dahlstedt, J. ; Lagergren, M. ; Lindholm, O.
Abstract :
With the promise of machine independence and efficient portability, JAVA has gained widespread popularity in the industry. Along with this promise comes the need for designing an efficient runtime environment that can provide high-end performance for JAVA-based applications. In other words, the performance of JAVA applications depends heavily on the design and optimization of the JAVA Virtual Machine (JVM). In this paper, we start by evaluating the performance of a JAVA server application (SPECjbb2000™) on an Intel platform running a rudimentary JVM. We present a measurement-based methodology for identifying areas of potential improvement and subsequently evaluating the effect of JVM optimizations and other platform optimizations. The compiler optimizations presented and discussed in this paper include peephole optimizations and JAVA specific optimizations. In addition, we also study the effect of optimizing the garbage collection mechanism and the effect of improved locking strategies. The identification and analysis of these optimizations are guided by the detailed knowledge of the microarchitecture and the use of performance measurement and profiling tools (EMON and VTune) on Intel platforms.
Keywords :
Java; client-server systems; computer architecture; optimising compilers; software performance evaluation; storage management; EMON; Intel platform; JAVA Virtual Machine; JAVA application performance; JAVA server application; JIT/JVM optimizations; Just-In-Time compiler; SPECjbb2000; VTune; compiler optimizations; garbage collection mechanism; locking strategies; measurement-based methodology; microarchitecture; peephole optimizations; performance measurement; platform optimizations; profiling tools; runtime environment; Area measurement; Design optimization; Engines; Hardware; Java; Optimization methods; Optimizing compilers; Performance analysis; Runtime environment; Virtual machining;
Conference_Titel :
Interaction Between Compilers and Computer Architectures, 2003. INTERACT-7 2003. Proceedings. Seventh Workshop on
Print_ISBN :
0-7695-1889-3
DOI :
10.1109/INTERA.2003.1192351