Abstract
Loop scheduling is an important problem in parallel processing. The retiming technique reorganizes an iteration; the unfolding technique schedules several iterations together. We combine these two techniques to obtain a static schedule with a reduced average computation time per iteration. We first prove that the order of retiming and unfolding is immaterial for scheduling a data-flow graph (DFG). From this nice property, we present a polynomial-time algorithm on the original DFG, before unfolding, to find the minimum-rate static schedule for a given unfolding factor. For the case of a unit-time DFG, efficient checking and retiming algorithms are presented.
| Original language | English |
|---|---|
| Pages (from-to) | 1259-1267 |
| Number of pages | 9 |
| Journal | IEEE Transactions on Parallel and Distributed Systems |
| Volume | 8 |
| Issue number | 12 |
| DOIs | |
| State | Published - 1997 |
| Externally published | Yes |
Keywords
- Data-flow graphs
- Loop parallelization
- Parallel processing
- Retiming
- Scheduling
- Unfolding