返回
Taskgraph: A Low Contention OpenMP Tasking Framework
DOI:10.1109/TPDS.2023.3284219.png)
摘要
En 中文
OpenMP is the de-facto standard for shared memory systems in High-Performance Computing (HPC). It includes a tasking model that offers a high-level of abstraction to effectively exploit structured (loop-based) and highly dynamic unstructured (task-based) 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 dependencies and greatly reduces those deriving from accesses to shared resources. Moreover, the taskgraph framework introduces in OpenMP the record-and-replay execution model that accelerates the taskgraph region from its second execution. Overall, the multiple optimizations presented in this paper allow exploiting fine-grained OpenMP tasks to cope with the trend in current applications pointing to leverage massive on-node parallelism, fine-grained and dynamic scheduling paradigms. The framework is implemented on LLVM 15.0. Results show that the taskgraph implementation outperforms the vanilla OpenMP system in terms of performance and scalability, for all structured and unstructured parallelism, and considering coarse and fine grained tasks. Furthermore, the proposed framework makes the tasking model a competitive alternative to the OpenMP thread model in most cases.
Keyword:
OpenMP tasking
run-time overhead
fine-grained parallelism
期刊
IF:
6
论文数:
5.2K
被引数:
1.1W
机构
引用论文
Time-Dependent Statistical and Correlation Properties of Neural Signals during Handwriting
PLoS ONE
IF0
Disrupted Value-Directed Strategic Processing in Individuals with Mild Cognitive Impairment: Behavioral and Neural Correlates
Geriatrics
IF0
The NAS Parallel Benchmarks for evaluating C plus plus parallel programming frameworks on shared-memory architectures用于评估共享内存架构上的C plus plus并行编程框架的NAS并行基准
A 5D gyrokinetic full-f global semi-Lagrangian code for flux-driven ion turbulence simulations用于通量驱动离子湍流模拟的5D陀螺动力学全f全局半拉格朗日代码
Unleashing Fine-Grained Parallelism on Embedded Many-Core Accelerators with Lightweight OpenMP Tasking通过轻量级OpenMP任务在嵌入式多核加速器上释放细粒度的并行性

