DocumentCode :
3057722
Title :
Just-In-Time Scheduling for Loop-based Speculative Parallelization
Author :
Llanos, Diego R. ; Orden, David ; Palop, Belén
Author_Institution :
Univ. de Valladolid, Valladolid
fYear :
2008
fDate :
13-15 Feb. 2008
Firstpage :
334
Lastpage :
342
Abstract :
Scheduling for speculative parallelization is a problem that remained unsolved despite its importance. Simple methods such as Fixed-Size Chunking (FSC) need several ´dry-runs´ before an acceptable chunk size is found. Other traditional scheduling methods were originally designed for loops with no dependences, so they are primarily focused in the problem of load balancing. In general, all these methods perform poorly when used for speculative parallelization, where loops may present unexpected dependences that adversely affect performance. In this work we address the problem of scheduling loops with and without dependences for speculative execution. We have found that a trade-off between minimizing the number of re-executions and reducing overheads can be found if the size of the scheduled block of iterations is calculated at runtime. We introduce here a scheduling method called Just-In- Time (JIT) scheduling that uses the information available during the execution of the loop in order to dynamically compute the size of the next block to be scheduled. The results show a 10% to 26% speedup improvement in real applications with dependences with respect to a carefully- tuned FSC strategy, and a 9% to 39% speedup improvement in real applications without dependences. With our proposal, the number of dependence violations that lead to squashes can be reduced by up to 62%. Moreover, in applications where the cost of dependence violations is too high to obtain speedups with FSC, our runtime scheduling mechanism avoids performance degradation.
Keywords :
just-in-time; parallel programming; program control structures; resource allocation; scheduling; FSC strategy; fixed-size chunking; just-in-time scheduling; load balancing; loop-based speculative parallelization; performance degradation; runtime scheduling mechanism; scheduling loops; Costs; Design methodology; Dynamic scheduling; Load management; Power capacitors; Processor scheduling; Runtime; Scheduling algorithm; Shape; Yarn; Speculative parallelization; loop-based speculation; scheduling; speculative multithreading;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Parallel, Distributed and Network-Based Processing, 2008. PDP 2008. 16th Euromicro Conference on
Conference_Location :
Toulouse
ISSN :
1066-6192
Print_ISBN :
978-0-7695-3089-5
Type :
conf
DOI :
10.1109/PDP.2008.13
Filename :
4457141
Link To Document :
بازگشت