Backtracking-Based Instruction Scheduling to Fill Branch Delay Slots

  • Authors:
  • Ivan D. Baev;Waleed M. Meleis;Santosh G. Abraham

  • Affiliations:
  • Hewlett-Packard, 11000 Wolfe Rd, Cupertino, California 95014. baev@cup.hp.com;Department of Electrical and Computer Engineering, Northeastern University, Boston, Massachusetts 02115. meleis@ece.neu.edu;Sun Microsystems, Mail Stop SUN03-204, 430 Mary Ave, Sunnyvale, California 94086. santosh.abraham@sun.com

  • Venue:
  • International Journal of Parallel Programming
  • Year:
  • 2002

Quantified Score

Hi-index 0.00

Visualization

Abstract

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. We first present the structure of a generic backtracking scheduling algorithm and prove that it terminates. We then describe two more aggressive backtracking schedulers and evaluate their effectiveness. We conclude that aggressive backtracking-based instruction schedulers can effectively improve schedule quality by eliminating branch delay slots with a small amount of additional computation.