Content deleted Content added
Matthiaspaul (talk | contribs) |
Matthiaspaul (talk | contribs) →Types of instruction scheduling: formatting |
||
Line 39:
== Types of instruction scheduling ==
There are several types of instruction scheduling:
#''Local'' (''basic block'') ''scheduling'': instructions can't move across basic block boundaries.
#''Global scheduling'': instructions can move across basic block boundaries.
#''Modulo scheduling'': an algorithm for generating [[software pipelining]], which is a way of increasing instruction level parallelism by interleaving different iterations of an inner [[Control_flow#Loops|loop]].
#''[[Trace scheduling]]'': the first practical approach for global scheduling, trace scheduling tries to optimize the control flow path that is executed most often.
#''Superblock scheduling'': a simplified form of trace scheduling which does not attempt to merge control flow paths at trace "side entrances". Instead, code can be implemented by more than one schedule, vastly simplifying the code generator.
==See also ==
|