1999
DOI: 10.1145/324133.324234
|View full text |Cite
|
Sign up to set email alerts
|

Scheduling multithreaded computations by work stealing

Abstract: This paper studies the problem of efficiently schedulling 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 … Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

4
594
0
12

Year Published

2005
2005
2017
2017

Publication Types

Select...
4
3
2

Relationship

0
9

Authors

Journals

citations
Cited by 1,026 publications
(620 citation statements)
references
References 15 publications
4
594
0
12
Order By: Relevance
“…In this section we discuss some of the implementation details related to the runtime system, component scheduling, Workers may run out of ready components to execute, in which case they engage in work stealing [10]. Work stealing involves a thief, a worker with no ready components contacting a victim, the worker with the highest number of ready components, and stealing a batch of half of its ready components.…”
Section: Methodsmentioning
confidence: 99%
“…In this section we discuss some of the implementation details related to the runtime system, component scheduling, Workers may run out of ready components to execute, in which case they engage in work stealing [10]. Work stealing involves a thief, a worker with no ready components contacting a victim, the worker with the highest number of ready components, and stealing a batch of half of its ready components.…”
Section: Methodsmentioning
confidence: 99%
“…The performance of the work-stealing algorithm depends heavily on these choices. The theoretical bounds of Blumofe and Leiserson [2] are valid for particular choices. How does a processor choose the next task in its stack?…”
Section: Classical Work-stealingmentioning
confidence: 99%
“…The workstealing algorithm [2] is a distributed version of list scheduling achieving a good load-balancing on distributed platforms. However, it may suffer from high communication costs for applications transferring large amounts of data or platforms with complex network topologies.…”
Section: Introductionmentioning
confidence: 99%
“…Despite this, efficient lock-free algorithms are more scalable than their lock-based counterparts [18]. Hence our decision to refine existing wait-free work-stealing for using in our scheduler [12,14]. Figure 2 shows the relationship of the migration window to the run queue.…”
Section: Process Migrationmentioning
confidence: 99%