NCC-UK Technical Report: Hybrid Parallel Progamming with Tasks


The UK National Competence Centre (NCC-UK) aims to improve access to scientific technical expertise and knowledge pools in order to reduce barriers to the uptake in use of large-scale facilities. As part of a technology state of the art investigation, NCC-UK team members at EPCC carried out a mini-project focused on task aware communication libraries,…

The UK National Competence Centre (NCC-UK) aims to improve access to scientific technical expertise and knowledge pools in order to reduce barriers to the uptake in use of large-scale facilities.

As part of a technology state of the art investigation, NCC-UK team members at EPCC carried out a mini-project focused on task aware communication libraries, and produced a Technical Report which forms an introductory guide to hybrid parallel programming with tasks.

Programming using tasks with data dependencies is a powerful method for minimising idle time due to excessive synchronisation and load imbalance in parallel applications, and is supported by APIs such as OpenMP and OmpSs. Implementing a full tasking model efficiently on distributed memory is very challenging, so a practical compromise is to use a hybrid of tasks within a node, and a traditional communication library such as MPI between nodes. This mini-project used task-aware versions of these libraries, developed by BSC (Barcelona Supercomputing Center), to implement some simple kernels and mini-applications, and assessed the performance, ease-of-use of, and available support for, this novel programming model.

A Technical Report was produced, which provides an introduction to using a hybrid parallel programming model that combines MPI with OmpSs or OpenMP dependent tasks. This model allows both computation and communication to be expressed using a coarse-grained dataflow approach, which helps to remove most of the unnecessary ordering constraints and intranode synchronisation imposed by the more conventional approach of MPI with OpenMP parallel loops. The report describes the model, and how it is supported by an augmented MPI library which interoperates with the tasking runtimes. It also assesses some of the advantages and disadvantages of this style of parallel programming. 

Read the Technical Report for this mini-project.

DoI: 10.5281/zenodo.7524540


YOU MAY ALSO LIKE

  • EuroCC4SEE @ IT IEEE Žabljak, Montenegro: Advancing HPC/AI Collaboration and Innovation in Southeast Europe

    The EuroCC4SEE project was successfully presented at the 29th IT IEEE Conference in Žabljak, Montenegro, bringing together national and regional experts in HPC and AI experts. The conference served as a platform for international networking, business-academia collaboration, and knowledge exchange, aligning emerging HPC/AI trends, services, and innovations with the needs of scholars, researchers, and industry…

  • EUROCC2 & EUROCC4SEE at IT2025 – Advancing HPC Collaboration in the SEE Region

    At the IEEE IT2025 Conference in Žabljak, EUROCC2 and EUROCC4SEE will play a key role in fostering high-performance computing (HPC) adoption through strategic discussions, expert panels, and networking opportunities. With a strong lineup of discussions and expert engagement, these sessions will drive innovation, knowledge exchange, and future collaboration in the European HPC ecosystem. Don’t miss…

  • IT2025 Conference and EuroCC sessions

    We are pleased to inform you that the Program of the 29th IT Conference and the schedule of sections are posted on the site within the links “Conference program” and “Sections schedule”. We would like to inform you that you can follow the work of the Conference via a videoconference link. Authors of papers will…