Modulo scheduling with multiple initiation intervals

Nancy Warter-Perez, Noubar Partamian · International Symposium on Microarchitecture · 1995

Modulo scheduling is a well defined local scheduling based software pipelining technique. One disadvantage of traditional modulo scheduling is that it has a single initiation interval (II) for loops with multiple execution paths. Thus, shorter or more frequently executed paths will be penalized by longer or less frequently executed paths. Furthermore, for architectures with predicated execution, this single-II must be large enough to satisfy the resource and recurrence requirements of all operations from all execution paths rather than the requirements of the most constrained path. In this paper, a multiple-II modulo scheduling technique is proposed for architectures with predicated execution. This enhancement to modulo scheduling maintains the benefits of a local scheduling based approach while reducing the effective II.

Read the paper · More papers on PaperTik