The Tiny-Tasks Granularity Trade-Off: Balancing overhead vs. performance in parallel systems
Stefan Bora, Brenton Walker, Markus Fidler

TL;DR
This paper investigates the trade-off in parallel systems between task granularity and overhead, proposing models and experiments that optimize performance and stability when splitting jobs into tiny tasks.
Contribution
It introduces a four-parameter overhead model, analytical bounds, and approximations for tiny tasks in parallel systems, validated through extensive Spark experiments.
Findings
Tiny tasks improve system stability and performance.
Overhead modeling accurately predicts sojourn times.
Experimental results match analytical approximations well.
Abstract
Models of parallel processing systems typically assume that one has workers and jobs are split into an equal number of tasks. Splitting jobs into smaller tasks, i.e. using ``tiny tasks'', can yield performance and stability improvements because it reduces the variance in the amount of work assigned to each worker, but as increases, the overhead involved in scheduling and managing the tasks begins to overtake the performance benefit. We perform extensive experiments on the effects of task granularity on an Apache Spark cluster, and based on these, developed a four-parameter model for task and job overhead that, in simulation, produces sojourn time distributions that match those of the real system. We also present analytical results which illustrate how using tiny tasks improves the stability region of split-merge systems, and analytical bounds on the sojourn and…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsCloud Computing and Resource Management · Distributed and Parallel Computing Systems · Scheduling and Optimization Algorithms
