DocumentCode :
1299996
Title :
Probabilistic loop scheduling for applications with uncertain execution time
Author :
Tongsima, Sissades ; Sha, Edwin H M ; Chantrapornchai, Chantana ; Surma, David R. ; Passos, Nelson Luiz
Author_Institution :
High Performance Comput. Lab., Nat. Electron. & Comput. Technol. Center, Bangkok, Thailand
Volume :
49
Issue :
1
fYear :
2000
fDate :
1/1/2000 12:00:00 AM
Firstpage :
65
Lastpage :
80
Abstract :
One of the difficulties in high-level synthesis and compiler optimization is obtaining a good schedule without knowing the exact computation time of the tasks involved. The uncertain computation times of these tasks normally occur when conditional instructions are employed and/or inputs of the tasks influence the computation time. The relationship between these tasks can be represented as a data-flow graph where each node models the task associated with a probabilistic computation time. A set of edges represents the dependencies between tasks. In this research, we study scheduling and optimization algorithms taking into account the probabilistic execution times. Two novel algorithms, called probabilistic retiming and probabilistic rotation scheduling, are developed for solving the underlying nonresource and resource constrained scheduling problems, respectively. Experimental results show that probabilistic retiming consistently produces a graph with a smaller longest path computation time for a given confidence level, as compared with the traditional retiming algorithm that assumes a fixed worst-case and average-case computation times. Furthermore, when considering the resource constraints and probabilistic environments, probabilistic rotation scheduling gives a schedule whose length is guaranteed to satisfy a given probability requirement. This schedule is better than schedules produced by other algorithms that consider worst-case and average-case scenarios
Keywords :
data flow graphs; high level synthesis; optimisation; optimising compilers; probability; processor scheduling; compiler optimization; conditional instructions; data-flow graph; high-level synthesis; optimization algorithms; probabilistic computation time; probabilistic execution times; probabilistic loop scheduling; probabilistic retiming; probabilistic rotation scheduling; uncertain execution time; Computer aided instruction; Dynamic scheduling; Fuzzy systems; High level synthesis; High performance computing; Optimizing compilers; Parallel processing; Pipeline processing; Processor scheduling; Scheduling algorithm;
fLanguage :
English
Journal_Title :
Computers, IEEE Transactions on
Publisher :
ieee
ISSN :
0018-9340
Type :
jour
DOI :
10.1109/12.822565
Filename :
822565
Link To Document :
بازگشت