Taskgraph: A Low Contention OpenMP Tasking Framework
Chenle Yu, Sara Royuela, Eduardo Qui\~nones

TL;DR
taskgraph is a framework that reduces OpenMP task management overheads using a dependency graph, enabling efficient fine-grained parallelism and outperforming standard OpenMP implementations in performance and scalability.
Contribution
introduces taskgraph, a novel dependency graph-based framework that significantly lowers OpenMP runtime overheads and enhances fine-grained task parallelism.
Findings
outperforms vanilla OpenMP in performance and scalability
reduces overheads related to task dependency resolution
enables effective exploitation of fine-grained parallelism
Abstract
OpenMP is the de-facto standard for shared memory systems in High-Performance Computing (HPC). It includes a task-based model that offers a high-level of abstraction to effectively exploit highly dynamic structured and unstructured parallelism in an easy and flexible way. Unfortunately, the run-time overheads introduced to manage tasks are (very) high in most common OpenMP frameworks (e.g., GCC, LLVM), which defeats the potential benefits of the tasking model, and makes it suitable for coarse-grained tasks only. This paper presents taskgraph, a framework that uses a task dependency graph (TDG) to represent a region of code implemented with OpenMP tasks in order to reduce the run-time overheads associated with the management of tasks, i.e., contention and parallel orchestration, including task creation and synchronization. The TDG avoids the overheads related to the resolution of task…
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
TopicsDistributed and Parallel Computing Systems · Cloud Computing and Resource Management · Parallel Computing and Optimization Techniques
