Software Engineering White Papers
Register Allocation for Modulo Scheduled Loops: Strategies, Algorithms and Heuristics
Overview Software pipelining is an important instruction scheduling technique for efficiently overlapping successive iterations of loops and executing them in parallel. This technical report studies the task of register allocation for software pipelined loops, both with and without hardware features that are specifically aimed at supporting software pipelines. Register allocation for software pipelines presents certain novel problems leading to unconventional solutions, especially in the presence of hardware support. This technical report formulates these novel problems and presents a number of alternative solution strategies. These alternatives are comprehensively tested against over one thousand loops to determine the best register allocation strategy, both with and without the hardware support for software pipelining.
| Publisher | Hewlett Packard | File Format | PDF, requires Acrobat Rdr 5 |
|---|---|---|---|
| Date Published | April 1992 | ||
| Format | White Papers | ||
| Topics | |||



