DocumentCode
2453545
Title
Modulo-variable expansion sensitive scheduling
Author
Valluri, Madhavi Gopal ; Govindarajan, R.
Author_Institution
Supercomput. Educ. & Res. Centre, Indian Inst. of Sci., Bangalore, India
fYear
1998
fDate
17-20 Dec 1998
Firstpage
334
Lastpage
341
Abstract
Modulo scheduling is an aggressive scheduling technique for loops that exploit instruction-level parallelism by overlapping successive iterations of the loop. Due to the nature of modulo scheduling, the lifetime of a variable can overlap with a subsequent definition of itself. To handle such overlapping lifetimes, modulo-variable expansion (MVE) is used, wherein the constructed schedule is unrolled a number of times. We propose a technique to improve the constructed schedule while performing MVE. In our approach, we unroll the data dependence graph of the original loop and re-schedule it with a MVE-sensitive scheduler. Such an approach is expected to result in better initiation rates as compared to the traditional approach. We have implemented our approach and evaluated its performance on a large number of scientific benchmark kernels
Keywords
data flow graphs; instruction sets; parallel programming; program control structures; scheduling; software performance evaluation; MVE-sensitive scheduler; data dependence graph; initiation rates; instruction-level parallelism; modulo-variable expansion; modulo-variable expansion sensitive scheduling; overlapping lifetimes; performance evaluation; program loops; scientific benchmark kernels; Automation; Computer science; Computer science education; Hardware; Kernel; Parallel processing; Pipeline processing; Processor scheduling; Software performance; Supercomputers;
fLanguage
English
Publisher
ieee
Conference_Titel
High Performance Computing, 1998. HIPC '98. 5th International Conference On
Conference_Location
Madras
Print_ISBN
0-8186-9194-8
Type
conf
DOI
10.1109/HIPC.1998.738006
Filename
738006
Link To Document