|
|||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||
ABSTRACT
Work stealing is a common technique used in the runtime schedulers of parallel languages such as Cilk and parallel libraries such as Intel Threading Building Blocks (TBB). Depth-restricted work stealing is a restriction of Cilk-like work stealing in which a processor blocked on a task at depth d can only steal tasks from other processors at depth greater than d. To support programs coded in a blocking style, i.e., code without explicit continuations, TBB imposes a depth restriction on work stealing to limit the stack space used by a computation. We present a lower bound on the completion time of a computation executed using a depth-restricted work-stealing scheduler. In particular, we construct a computation which on P processors runs a factor of Ω(P) slower with depth-restricted work stealing as compared to unrestricted work stealing. On this pessimal computation, depth-restricted work stealing asymptotically serializes execution while unrestricted work stealing achieves linear speedup. REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
INDEX TERMS
Primary Classification:
General Terms:
Keywords:
|
|||||||||||||||||||||||||||||||