DocumentCode
2511748
Title
Instruction Scheduling with Release Times and Deadlines on ILP Processors
Author
Wu, Hui ; Jaffar, Joxan ; Xue, Jingling
Author_Institution
Sch. of Comput. Sci. & Eng., New South Wales Univ., NSW
fYear
0
fDate
0-0 0
Firstpage
51
Lastpage
60
Abstract
ILP (instruction level parallelism) processors are being increasingly used in embedded systems. In embedded systems, instructions may be subject to timing constraints. An optimising compiler for ILP processors needs to find a feasible schedule for a set of time-constrained instructions. In this paper, we present a fast algorithm for scheduling instructions with precedence-latency constraints, individual integer release times and deadlines on an ILP processor with multiple functional units. The time complexity of our algorithm is O(n2 logd)+min{O(de), O(ne)}+min{O(ne), O(n2.376)}, where n is the number of instructions, e is the number of edges in the precedence graph and d is the maximum latency. Our algorithm is guaranteed to find a feasible schedule whenever one exists in the following special cases: 1) one functional unit, arbitrary precedence constraints, latencies in {0,1}, integer release times and deadlines; 2) two identical functional units, arbitrary precedence constraints, latencies of 0, integer release times and deadlines; 3) multiple identical functional units or multiple functional units of different types, monotone interval-ordered graph, integer release times and deadlines; 4) multiple identical functional units, in-forest, equal latencies, integer release times and deadlines. In case 1) our algorithm improves the existing fastest algorithm from O(n2 logn)+min{O(ne), O(n2.376)} to min{O(ne), O(n2.376)}. In case 2) our algorithm improves the existing fastest algorithm from O(ne+n2 logn) to min{O(ne), O(n2.376)}. In case 3) no polynomial time algorithm for multiple functional units of different types was known before
Keywords
computational complexity; embedded systems; multiprocessing systems; optimising compilers; pipeline processing; processor scheduling; embedded system; instruction level parallelism processor; instruction scheduling; integer deadline; integer release time; optimising compiler; precedence-latency constraint; time complexity; time-constrained instruction; Computer aided instruction; Computer science; Delay; Embedded computing; Embedded system; Optimizing compilers; Polynomials; Processor scheduling; Scheduling algorithm; Timing;
fLanguage
English
Publisher
ieee
Conference_Titel
Embedded and Real-Time Computing Systems and Applications, 2006. Proceedings. 12th IEEE International Conference on
Conference_Location
Sydney, Qld.
ISSN
1533-2306
Print_ISBN
0-7695-2676-4
Type
conf
DOI
10.1109/RTCSA.2006.39
Filename
1691294
Link To Document