Impact of JIT/JVM Optimizations on Java Application Performance

  • Authors:
  • K. Shiv;R. Iyer;C. Newburn;J. Dahlstedt;M. Lagergren;O. Lindholm

  • Affiliations:
  • -;-;-;-;-;-

  • Venue:
  • INTERACT '03 Proceedings of the Seventh Workshop on Interaction between Compilers and Computer Architectures
  • Year:
  • 2003

Quantified Score

Hi-index 0.00

Visualization

Abstract

With the promise of machine independence and efficientportability, JAVA has gained widespread popularityin the industry. Along with this promise comes theneed for designing an efficient runtime environment thatcan provide high-end performance for Java-based applications.In other words, the performance of Java applicationsdepends heavily on the design and optimization ofthe Java Virtual Machine (JVM). In this paper, we start byevaluating the performance of a Java server application(SPECjbb2000TM) on an Intel platform running a rudimentaryJVM. We present a measurement-based methodologyfor identifying areas of potential improvement and subsequentlyevaluating the effect of JVM optimizations andother platform optimizations. The compiler optimizationspresented and discussed in this paper include peephole optimizationsand Java specific optimizations. In addition, wealso study the effect of optimizing the garbage collectionmechanism and the effect of improved locking strategies.The identification and analysis of these optimizations areguided by the detailed knowledge of the micro-architectureand the use of performance measurement and profiling tools(EMON and VTune) on Intel platforms.