Online feedback-directed optimization of Java
This paper describes the implementation of an online feedback-directed optimization
system. The system is fully automatic; it requires no prior (offline) profiling run. It uses a
previously developed low-overhead instrumentation sampling framework to collect control
flow graph edge profiles. This profile information is used to drive several traditional
optimizations, as well as a novel algorithm for performing feedback-directed control flow
graph node splitting. We empirically evaluate this system and demonstrate improvements in …
system. The system is fully automatic; it requires no prior (offline) profiling run. It uses a
previously developed low-overhead instrumentation sampling framework to collect control
flow graph edge profiles. This profile information is used to drive several traditional
optimizations, as well as a novel algorithm for performing feedback-directed control flow
graph node splitting. We empirically evaluate this system and demonstrate improvements in …
This paper describes the implementation of an online feedback-directed optimization system. The system is fully automatic; it requires no prior (offline) profiling run. It uses a previously developed low-overhead instrumentation sampling framework to collect control flow graph edge profiles. This profile information is used to drive several traditional optimizations, as well as a novel algorithm for performing feedback-directed control flow graph node splitting. We empirically evaluate this system and demonstrate improvements in peak performance of up to 17% while keeping overhead low, with no individual execution being degraded by more than 2% because of instrumentation.
ACM Digital Library