To enable analysis and visualization of
phased behavior in Java programs and to facilitate optimization
development, we have implemented a freely-available, phase
analysis framework within JikesRVM.
The framework couples existing techniques into a unifying
set of tools for data collection, processing, and analysis of
dynamic phased behavior in Java programs. The framework enables
program and optimization developers to significantly reduce analysis
time and target optimization (by-hand or automatic) to parts of
the code that will recur with sufficient regularity. We use
the framework to evaluate phased behavior in the SpecJVM
benchmark suite.