Title :
Scheduling multithreaded computations by work stealing
Author :
Blumofe, Robert D. ; Leiserson, Charles E.
Author_Institution :
Lab. for Comput. Sci., MIT, Cambridge, MA, USA
Abstract :
This paper studies the problem of efficiently scheduling fully strict (i.e., well-structured) multithreaded computations on parallel computers. A popular and practical method of scheduling this kind of dynamic MIMD-style computation is “work stealing,” in which processors needing work steal computational threads from other processors. In this paper, we give the first provably good work-stealing scheduler for multithreaded computations with dependencies. Specifically, our analysis shows that the expected time TP to execute a fully strict computation on P processors using our work-stealing scheduler is TP=O(T1/P+T∞ ), where T1 is the minimum serial execution time of the multithreaded computation and T∞ is the minimum execution time with an infinite number of processors. Moreover, the space SP required by the execution satisfies SP⩽S1P. We also show that the expected total communication of the algorithm is at most O(T∞Smax P), where Smax is the size of the largest activation record of any thread, thereby justifying the folk wisdom that work-stealing schedulers are more communication efficient than their work-sharing counterparts. All three of these bounds are existentially optimal to within a constant factor
Keywords :
parallel processing; parallel programming; processor scheduling; dynamic MIMD-style computation; folk wisdom; minimum serial execution time; multithreaded computations scheduling; parallel computers; work stealing; Algorithm design and analysis; Computer science; Concurrent computing; Data structures; Dynamic scheduling; Laboratories; Load management; Processor scheduling; Scheduling algorithm; Yarn;
Conference_Titel :
Foundations of Computer Science, 1994 Proceedings., 35th Annual Symposium on
Conference_Location :
Santa Fe, NM
Print_ISBN :
0-8186-6580-7
DOI :
10.1109/SFCS.1994.365680