Backtracking-based instruction scheduling to fill branch delay slots
Conventional schedulers schedule operations in dependence order and never revisit or undo a scheduling decision on any operation. In contrast, backtracking schedulers may unschedule operations and can often generate better schedules. This paper develops and evaluates the backtracking approach to fil...
Gespeichert in:
Veröffentlicht in: | International journal of parallel programming 2002-12, Vol.30 (6), p.397-418 |
---|---|
Hauptverfasser: | , , |
Format: | Artikel |
Sprache: | eng |
Schlagworte: | |
Online-Zugang: | Volltext |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
Zusammenfassung: | Conventional schedulers schedule operations in dependence order and never revisit or undo a scheduling decision on any operation. In contrast, backtracking schedulers may unschedule operations and can often generate better schedules. This paper develops and evaluates the backtracking approach to fill branch delay slots. It first presents the structure of a generic backtracking scheduling algorithm and proves that it terminates. It then describes two more aggressive backtracking schedulers and evaluates their effectiveness. It concludes that aggressive backtracking-based instruction schedulers can effectively improve schedule quality by eliminating branch delay slots with a small amount of additional computation. |
---|---|
ISSN: | 0885-7458 1573-7640 |
DOI: | 10.1023/A:1020601110391 |