Selective compilation via fast code analysis and bytecode tracing

  • Authors:
  • G. Agosta;S. Crespi Reghizzi;P. Palumbo;M. Sykora

  • Affiliations:
  • Politecnico di Milano, Piazza Leonardo da Vinci, Milano, Italy;Politecnico di Milano, Piazza Leonardo da Vinci, Milano, Italy;Politecnico di Milano, Piazza Leonardo da Vinci, Milano, Italy;Politecnico di Milano, Piazza Leonardo da Vinci, Milano, Italy

  • Venue:
  • Proceedings of the 2006 ACM symposium on Applied computing
  • Year:
  • 2006

Quantified Score

Hi-index 0.00

Visualization

Abstract

Modern Java Virtual Machines (JVM) commonly adopt Just-In-Time (JIT) compilation to speed up the execution of Java Bytecode. However, the effort of compiling a region of code is only worth if the code is frequently executed. Therefore, Selective Compilation is employed so that the JIT compiler is only invoked on those regions of code where most of the computation is performed (hot spots). The core task in Selective Compilation is to correctly identify the hot spots in a program. In our SeleKaffe prototype virtual machine, we introduce two heuristics aimed at detecting hot spots both statically, via bytecode analysis, and dynamically, via profiling information. Experimental results on a representative set of benchmarks show that our method selection strategy is more accurate than known strategies, and not significantly slower.