Work-stealing with Configurable Scheduling Strategies
Paper i proceeding, 2013

Work-stealing systems are typically oblivious to the nature of the tasks they are scheduling. They do not know or take into account how long a task will take to execute or how many subtasks it will spawn. Moreover, task execution order is typically determined by an underlying task storage data structure, and cannot be changed. There are thus possibilities for optimizing task parallel executions by providing information on specific tasks and their preferred execution order to the scheduling system. We investigate generalizations of work-stealing and introduce a framework enabling applications to dynamically provide hints on the nature of specific tasks using scheduling strategies. Strategies can be used to independently control both local task execution and steal order. Strategies allow optimizations on specific tasks, in contrast to more conventional scheduling policies that are typically global in scope. Strategies are composable and allow different, specific scheduling choices for different parts of an application simultaneously. We have implemented a work-stealing system based on our strategy framework. A series of benchmarks demonstrates beneficial effects that can be achieved with scheduling strategies.

scheduler hints

strategies

Work-stealing

priorities

Algorithms

Författare

Martin Wimmer

Technische Universität Wien

J.L. Träff

Technische Universität Wien

Daniel Cederman

Chalmers, Data- och informationsteknik, Nätverk och system

Philippas Tsigas

Chalmers, Data- och informationsteknik, Nätverk och system

ACMSIGPLAN Symposium on Principles and Practice of Parallel Programming

1542-0205 (ISSN)

Vol. 48 8 315-316

18th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, PPoPP 2013
Shenzhen, China,

Ämneskategorier

Datavetenskap (datalogi)

DOI

10.1145/2517327.2442562

Mer information

Senast uppdaterat

2021-07-19