Instruction scheduling: Difference between revisions

Content deleted Content added
Data hazards: no boldface per MOS
The placement of the phrase, "without changing the meaning of the code", was awkward.
Line 1:
{{Refimprove|date=April 2018}}
In [[computer science]], '''instruction scheduling''' is a [[compiler optimization]] used to improve [[instruction-level parallelism]], which improves performance on machines with [[instruction pipeline]]s. Put more simply, it tries to do the following without changing the meaning of the code, it tries to:
 
* Avoid [[pipeline stall]]s by rearranging the order of instructions.<ref name="ColdScheduling_1994"/>
* Avoid illegal or semantically ambiguous operations (typically involving subtle instruction pipeline timing issues or non-interlocked resources).