Research Article
Classification and generation of schedules for VLIW processors
Article first published online: 3 APR 2007
DOI: 10.1002/cpe.1175
Copyright © 2007 John Wiley & Sons, Ltd.
Issue
1532-0634/asset/cover.gif?v=1&s=6094df24c795ce080ff6df6ff3b6bcec19adb708)
Concurrency and Computation: Practice and Experience
Special Issue: Current Trends in Compilers for Parallel Computers (CPC2006)
Volume 19, Issue 18, pages 2369–2389, 25 December 2007
Additional Information
How to Cite
Kessler, C., Bednarski, A. and Eriksson, M. (2007), Classification and generation of schedules for VLIW processors. Concurrency Computat.: Pract. Exper., 19: 2369–2389. doi: 10.1002/cpe.1175
Publication History
- Issue published online: 15 OCT 2007
- Article first published online: 3 APR 2007
- Manuscript Accepted: 23 DEC 2006
- Manuscript Revised: 15 DEC 2006
- Manuscript Received: 28 FEB 2006
Funded by
- Linköping University. Grant Number: Ceniit 01.06
- Vetenskapsrådet
- SSF (project RISE)
- CUGS Graduate School
- Abstract
- References
- Cited By
Keywords:
- instruction-level parallelism;
- instruction scheduling;
- code generation;
- code compaction;
- integer linear programming;
- VLIW architecture;
- superscalar processor
Abstract
Exact methods for optimal instruction scheduling are gaining importance. They differ, however, considerably in the assumed processor model and in the space of schedules searched for an optimal solution. We identify and analyze different classes of schedules for VLIW processors. The classes are induced by various common techniques for generating or enumerating them, such as integer linear programming or list scheduling with backtracking. In particular, we study the relationship between VLIW schedules and their equivalent linearized forms (which may be used, e.g., with superscalar processors), and we identify classes of VLIW schedules that can be created from a linearized form using VLIW compaction methods that are just the static equivalents of dynamic instruction dispatch algorithms of in-order and out-of-order issue superscalar processors. For example, we study the class of greedy schedules and show that, if all instructions have multiblock reservation tables, it is safe for time optimization to consider greedy schedules only. We also show that, in certain situations, certain schedules generally cannot be constructed by incremental scheduling algorithms that are based on topological sorting of the data dependence graph. We summarize our findings as a hierarchy of classes of VLIW schedules. These results can sharpen the interpretation of the term ‘optimality’ used with various methods for optimal VLIW scheduling, and may help to identify classes that can be safely ignored when searching for an optimal schedule. Copyright © 2007 John Wiley & Sons, Ltd.

1532-0634/asset/olbannerleft.gif?v=1&s=a4e4e145787de94e1d91eaab3c8c29d8a9d96a26)