Sciweavers

PPPJ
2009
ACM

Phase detection using trace compilation

14 years 6 months ago
Phase detection using trace compilation
Dynamic compilers can optimize application code specifically for observed code behavior. Such behavior does not have to be stable across the entire program execution to be beneficial for optimizations, it must only be stable for a certain program phase. To specialize code for a program phase, it is necessary to detect when the execution behavior of the program changes (phase change). Trace-based compilation is an efficient method to detect such phase changes. A trace tree is a collection of frequently executed code paths through a code region, which is assembled dynamically at run time as the program executes. Program execution tends to remain within such a trace tree during a stable phase, whereas phase changes cause a sudden increase in side exits from the trace tree. Because trace trees are recorded at run time by observing the interpreter, the actual values of variables and expressions are also available. This allows a definition of phases based not only on recurring control ...
Christian Wimmer, Marcelo Silva Cintra, Michael Be
Added 19 May 2010
Updated 19 May 2010
Type Conference
Year 2009
Where PPPJ
Authors Christian Wimmer, Marcelo Silva Cintra, Michael Bebenita, Mason Chang, Andreas Gal, Michael Franz
Comments (0)