Lecture Notes in Computer Science, 2003, Volume 2624/2003, 297-331, DOI: 10.1007/3-540-35767-X_15

Tree Traversal Scheduling: A Global Instruction Scheduling Technique for VLIW/EPIC Processors

Huiyang Zhou, Matthew D. Jennings and Thomas M. Conte

View Related Documents

Abstract

Global scheduling in a treegion framework has been proposed to exploit instruction level parallelism (ILP) at compile time. A treegion is a single-entry / multiple-exit global scheduling scope that consists of basic blocks with control-flow forming a tree. Because a treegion scope is nonlinear (includes multiple paths) it is distinguished from linear scopes such as traces or superblocks. Treegion scheduling has the capability of speeding up all possible paths within the scheduling scope. This paper presents a new global scheduling algorithm using treegions called Tree Traversal Scheduling (TTS). Efficient, incremental data-flow analysis in support of TTS is also presented. Performance results are compared to the scheduling of the linear regions that result from the decomposition of treegions. We refer to these resultant linear regions as linear treegions (LT) and consider them analogous to superblocks with the same amount of code expansion as the base treegion. Experimental results for TTS scheduling show a 35% speedup compared to basic block (BB) scheduling and a 4% speedup compared to LT scheduling.

Fulltext Preview

Image of the first page of the fulltext document