2017
DOI: 10.1007/s10766-016-0484-8
|View full text |Cite
|
Sign up to set email alerts
|

Scheduling Parallel Computations by Work Stealing: A Survey

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
20
0

Year Published

2017
2017
2023
2023

Publication Types

Select...
4
2
2

Relationship

0
8

Authors

Journals

citations
Cited by 37 publications
(20 citation statements)
references
References 76 publications
0
20
0
Order By: Relevance
“…In WS, independent scheduling agents manage resources in a parallel system, and may take roles of: (i) thieves, which attempt to dynamically remap work to underloaded (or idle) resources, trying to manage workload so tasks are constantly available to be computed; or (ii) victims, which are targets chosen by thieves to have their tasks stolen. WS schedulers are commonly applied to dynamic and imbalanced applications [9,35] that cannot afford a stable work decomposition, but may be applied to any parallel application decomposable as a Direct Acyclic Graph (DAG). This way, applications decomposed in models like fork/join [36], general task parallelism, and parallel loops in shared memory [37] have also benefited from WS.…”
Section: Work Stealing Schedulersmentioning
confidence: 99%
“…In WS, independent scheduling agents manage resources in a parallel system, and may take roles of: (i) thieves, which attempt to dynamically remap work to underloaded (or idle) resources, trying to manage workload so tasks are constantly available to be computed; or (ii) victims, which are targets chosen by thieves to have their tasks stolen. WS schedulers are commonly applied to dynamic and imbalanced applications [9,35] that cannot afford a stable work decomposition, but may be applied to any parallel application decomposable as a Direct Acyclic Graph (DAG). This way, applications decomposed in models like fork/join [36], general task parallelism, and parallel loops in shared memory [37] have also benefited from WS.…”
Section: Work Stealing Schedulersmentioning
confidence: 99%
“…Dynamic Load Balancing. Dynamic load balancing strategies use work-stealing or work-shedding to redistribute load from heavily-loaded workers to lightly-loaded ones at runtime [12,13,17,34,82]. They are mostly developed for traditional task-based parallel programming models in multicore or HPC systems.…”
Section: Eliminating Stragglers By Load Balancingmentioning
confidence: 99%
“…Yet, different from those traditional workloads such as HPC processing [17,34] or MapReduce [31], ML computations are highly structured (with thousands of short iterations) and also tensor-based (samples in each iteration are packaged into a non-divisible matrix for fast processing). Static load balancing approaches [51,73,78] are not aware of runtime resource variations, and dynamic approaches [13,41,82], which are mainly based on work stealing [12,17,34], are also deficient for ML workloads. First, work stealing usually requires fine-grained worker progress monitoring and runtime load migration, which is inefficient for an iterative model training process.…”
Section: Introductionmentioning
confidence: 99%
“…Additionally, since this is a pull-based scheduler, a stop criteria must be added as a maximum number of requests in line 5 of Algorithm 3. This kind of criteria is important to guarantee that the strategy will finish in a timely fashion, and not get into request-donation (or stealing, in Work-Stealing schedulers) cycles [24].…”
Section: Distributed Edge Migrationmentioning
confidence: 99%