Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
research-article

The Design of OpenMP Tasks

Published: 01 March 2009 Publication History

Abstract

OpenMP has been very successful in exploiting structured parallelism in applications. With increasing application complexity, there is a growing need for addressing irregular parallelism in the presence of complicated control structures. This is evident in various efforts by the industry and research communities to provide a solution to this challenging problem. One of the primary goals of OpenMP 3.0 is to define a standard dialect to express and efficiently exploit unstructured parallelism. This paper presents the design of the OpenMP tasking model by members of the OpenMP 3.0 tasking sub-committee which was formed for this purpose. The paper summarizes the efforts of the sub-committee (spanning over two years) in designing, evaluating and seamlessly integrating the tasking model into the OpenMP specification. In this paper, we present the design goals and key features of the tasking model, including a rich set of examples and an in-depth discussion of the rationale behind various design choices. We compare a prototype implementation of the tasking model with existing models, and evaluate it on a wide range of applications. The comparison shows that the OpenMP tasking model provides expressiveness, flexibility, and huge potential for performance and scalability.

Cited By

View all
  • (2024)Parallel Iterative Mistake Minimization (IMM) clustering algorithm for shared-memory systemsProceedings of the 53rd International Conference on Parallel Processing10.1145/3673038.3673057(1-10)Online publication date: 12-Aug-2024
  • (2024)Enhancing Heterogeneous Computing Through OpenMP and GPU GraphProceedings of the 53rd International Conference on Parallel Processing10.1145/3673038.3673050(534-543)Online publication date: 12-Aug-2024
  • (2024)OpenMP-RT: Native Pragma Support for Real-Time Tasks and Synchronization with LLVM under LinuxProceedings of the 25th ACM SIGPLAN/SIGBED International Conference on Languages, Compilers, and Tools for Embedded Systems10.1145/3652032.3657574(119-130)Online publication date: 20-Jun-2024
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image IEEE Transactions on Parallel and Distributed Systems
IEEE Transactions on Parallel and Distributed Systems  Volume 20, Issue 3
March 2009
144 pages

Publisher

IEEE Press

Publication History

Published: 01 March 2009

Author Tags

  1. Concurrent
  2. Concurrent Programming
  3. Concurrent programming structures
  4. and parallel languages
  5. distributed

Qualifiers

  • Research-article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 03 Sep 2024

Other Metrics

Citations

Cited By

View all
  • (2024)Parallel Iterative Mistake Minimization (IMM) clustering algorithm for shared-memory systemsProceedings of the 53rd International Conference on Parallel Processing10.1145/3673038.3673057(1-10)Online publication date: 12-Aug-2024
  • (2024)Enhancing Heterogeneous Computing Through OpenMP and GPU GraphProceedings of the 53rd International Conference on Parallel Processing10.1145/3673038.3673050(534-543)Online publication date: 12-Aug-2024
  • (2024)OpenMP-RT: Native Pragma Support for Real-Time Tasks and Synchronization with LLVM under LinuxProceedings of the 25th ACM SIGPLAN/SIGBED International Conference on Languages, Compilers, and Tools for Embedded Systems10.1145/3652032.3657574(119-130)Online publication date: 20-Jun-2024
  • (2024)ABSS: An Adaptive Batch-Stream Scheduling Module for Dynamic Task Parallelism on Chiplet-based Multi-Chip SystemsACM Transactions on Parallel Computing10.1145/364359711:1(1-24)Online publication date: 11-Mar-2024
  • (2024)Read/write fence-free work-stealing with multiplicityJournal of Parallel and Distributed Computing10.1016/j.jpdc.2023.104816186:COnline publication date: 1-Apr-2024
  • (2024)Optimizing BIT1, a Particle-in-Cell Monte Carlo Code, with OpenMP/OpenACC and GPU AccelerationComputational Science – ICCS 202410.1007/978-3-031-63749-0_22(316-330)Online publication date: 2-Jul-2024
  • (2024)Enhancing Sparse Direct Solver Scalability Through Runtime System Automatic Data PartitionAsynchronous Many-Task Systems and Applications10.1007/978-3-031-61763-8_10(105-110)Online publication date: 14-Feb-2024
  • (2023)Design and Analysis of the Network Software Stack of an Asynchronous Many-task System -- The LCI parcelport of HPXProceedings of the SC '23 Workshops of The International Conference on High Performance Computing, Network, Storage, and Analysis10.1145/3624062.3624598(1151-1161)Online publication date: 12-Nov-2023
  • (2023)Computing Star Discrepancies with Numerical Black-Box Optimization AlgorithmsProceedings of the Genetic and Evolutionary Computation Conference10.1145/3583131.3590456(1330-1338)Online publication date: 15-Jul-2023
  • (2023)Beyond Static Parallel Loops: Supporting Dynamic Task Parallelism on Manycore Architectures with Software-Managed Scratchpad MemoriesProceedings of the 28th ACM International Conference on Architectural Support for Programming Languages and Operating Systems, Volume 310.1145/3582016.3582020(46-58)Online publication date: 25-Mar-2023
  • Show More Cited By

View Options

View options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media