Sciweavers

PLDI
2004
ACM

Inducing heuristics to decide whether to schedule

14 years 4 months ago
Inducing heuristics to decide whether to schedule
Instruction scheduling is a compiler optimization that can improve program speed, sometimes by 10% or more—but it can also be expensive. Furthermore, time spent optimizing is more important in a Java just-in-time (JIT) compiler than in a traditional one because a JIT compiles code at run time, adding to the running time of the program. We found that, on any given block of code, instruction scheduling often does not produce significant benefit and sometimes degrades speed. Thus, we hoped that we could focus scheduling effort on those blocks that benefit from it. Using supervised learning we induced heuristics to predict which blocks benefit from scheduling. The induced function chooses, for each block, between list scheduling and not scheduling the block at all. Using the induced function we obtained over 90% of the improvement of scheduling every block but with less than 25% of the scheduling effort. Deciding when to optimize, and which optimization(s) to apply, is an important ...
John Cavazos, J. Eliot B. Moss
Added 30 Jun 2010
Updated 30 Jun 2010
Type Conference
Year 2004
Where PLDI
Authors John Cavazos, J. Eliot B. Moss
Comments (0)