Scheduling time-constrained instructions on pipelined processors

被引:12
作者
Leung, A
Palem, KV
Pnueli, A
机构
[1] NYU, Dept Comp Sci, New York, NY 10003 USA
[2] Georgia Inst Technol, Ctr Res Embedded Syst & Technol, Atlanta, GA 30332 USA
[3] NYU, Courant Inst Math Sci, Dept Comp Sci, New York, NY 10012 USA
来源
ACM TRANSACTIONS ON PROGRAMMING LANGUAGES AND SYSTEMS | 2001年 / 23卷 / 01期
关键词
algorithms; compiler optimization; deadlines; instruction scheduling; latency; NP-complete; pipeline processor; precedence delay; real-time; release-times; RISC machine scheduling; time lag;
D O I
10.1145/383721.383733
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
In this work we investigate the problem of scheduling instructions on idealized microprocessors with multiple pipelines, in the presence of precedence constraints, release-times, deadlines, and latency constraints. A latency of l(ij) specifies that there must be at least lij time-steps between the completion time of instruction i and the start time of instruction j. A latency of l(ij) = -1 can be used to specify that j may be scheduled concurrently with i but not earlier. We present a generic algorithm that runs in O(n(2) log na(n) + ne) time, given n instructions and e edges in the precedence DAG, where cr(n) is the functional inverse of the Ackermann function. Our algorithm can be used to construct feasible schedules for various classes of instances, including instances with the following configurations: (1) one pipeline, with individual release-times and deadlines and where the latencies between instructions are restricted to 0 and 1; (2) in pipelines, with individual release-times and deadlines, and monotone-interval order precedences; (3) two pipelines with latencies of -1 or 0, and release-times and deadlines; (4) one pipeline, latencies of 0 or 1 and individual processing times that are at least one; (5) m pipelines, intree precedences, constant latencies, and deadlines; (6) m pipelines, outtree precedences, constant latencies, and release-times. For instances with deadlines, optimal schedules that minimize the maximal tardiness can be constructed using binary search, in O(log n) iterations of our algorithm. We obtain our results using backward scheduling, a very general relaxation method, which extends, unifies, and clarifies many previous results on instruction scheduling for pipelined and parallel machines.
引用
收藏
页码:73 / 103
页数:31
相关论文
共 45 条
[1]  
ALLAN V, 1998, BUILDING RETARGETABL
[2]   FORESIGHTED INSTRUCTION SCHEDULING UNDER TIMING CONSTRAINTS [J].
ALLAN, VH ;
SU, BG ;
WIJAYA, PT ;
WANG, J .
IEEE TRANSACTIONS ON COMPUTERS, 1992, 41 (09) :1169-1172
[3]  
[Anonymous], 1955, 43 U CAL MAN SCI RES
[4]  
[Anonymous], 1979, Computers and Intractablity: A Guide to the Theoryof NP-Completeness
[5]  
BEATY SJ, 1992, P 25 ANN INT S MICR
[6]  
BEATY SJ, 1994, C MASS PAR COMP SYST
[7]   SCHEDULING EXPRESSIONS ON A PIPELINED PROCESSOR WITH A MAXIMAL DELAY OF ONE CYCLE [J].
BERNSTEIN, D ;
GERTNER, I .
ACM TRANSACTIONS ON PROGRAMMING LANGUAGES AND SYSTEMS, 1989, 11 (01) :57-66
[8]  
BERNSTEIN D, 1991, P SIGPLAN 91 C PROGR
[9]  
BRUCKER P, 1998, OSNABRUECKER SCHRI P
[10]  
BRUNO J, 1980, IEEE T COMPUT, V29, P308, DOI 10.1109/TC.1980.1675569