Work-stealing with Configurable Scheduling Strategies
Poster (konferens), 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.

work-stealing

scheduler hints

strategies

priorities

Författare

Martin Wimmer

Daniel Cederman

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

Jesper Larsson Träff

Philippas Tsigas

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

18th ACM Symposium on Principles & Practice of Parallel Programming (PPOPP)

315-316

Styrkeområden

Informations- och kommunikationsteknik

Ämneskategorier

Datavetenskap (datalogi)