Advanced Synchronization Techniques for Task-based Runtime Systems
David \'Alvarez, Kevin Sala, Marcos Maro\~nas, Aleix Roca, Vicen\c{c}, Beltran

TL;DR
This paper analyzes scalability bottlenecks in task-based runtime systems like OmpSs-2 and OpenMP, proposing new solutions such as a wait-free dependency system and a scalable scheduler to improve performance for fine-grained tasks.
Contribution
It introduces novel scalable scheduling and dependency management techniques, addressing key bottlenecks in task-based runtimes and demonstrating improved performance.
Findings
Scalability bottlenecks identified in runtime components.
Proposed wait-free dependency system enhances concurrency.
New scheduler design improves performance for fine-grained tasks.
Abstract
Task-based programming models like OmpSs-2 and OpenMP provide a flexible data-flow execution model to exploit dynamic, irregular and nested parallelism. Providing an efficient implementation that scales well with small granularity tasks remains a challenge, and bottlenecks can manifest in several runtime components. In this paper, we analyze the limiting factors in the scalability of a task-based runtime system and propose individual solutions for each of the challenges, including a wait-free dependency system and a novel scalable scheduler design based on delegation. We evaluate how the optimizations impact the overall performance of the runtime, both individually and in combination. We also compare the resulting runtime against state of the art OpenMP implementations, showing equivalent or better performance, especially for fine-grained tasks.
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.
