The STAR group at BSC upgrades its software stack for developing and running parallel applications on high-performance systems

19 November 2024
The STAR group focuses on research crossing multiple software layers, from OS, runtimes and low-level APIs to programming models, tools, and applications

The System Tools and Advanced Runtimes (STAR) group of the Barcelona Supercomputing Center–Centro Nacional de Supercomputación (BSC-CNS) is excited to announce the release of the STAR software stack version 2024.11, featuring several updates and enhancements.

The new release of the OmpSs-2 programming model introduces support for C++20 coroutines through the LLVM Clang compiler, the NODES runtime and the nOS-V tasking library. This advancement enables efficient task suspension, greatly improving performance and flexibility in parallel computing applications. Additionally, we are releasing a redesigned TAMPI library, highly optimized for parallel and communication intensive scenarios.

Key Updates in the 2024.11 Release

nOS-V:

  • Task suspension API: Introduces a new task suspension API allowing support for coroutines and similar constructs.
  • RISC-V Support: Adds native support for the RISC-V architecture
  • Topology API: Allows system topology configuration via the nosv.toml file.
  • Condition Variables: Introduces support for conditional variables as a replacement for pthread condition variables.
  • Breakdown Model Support: Implements support for the breakdown model through ovniemu -b.
  • Turbo Mode: Enable the turbo setting by default and adds correctness checks for FPU flags.

NODES:

  • Coroutine support: Adds support for suspending and resuming tasks through a new runtime API.

LLVM/Clang:

  • Coroutine support: Adds support for C++20 coroutines calls inside outline tasks.

LLVM/OpenMP (libompv):

  • Compatibility Mode: Supports LLVM/Intel compiler-generated code by setting OMP_ENABLE_COMPAT=1.
  • General Improvements: Various bug fixes and performance enhancements.

Ovni:

  • Breakdown Model for nOS-V: Adds detailed support for performance analysis.
  • New Mark API: Introduces ovni_mark_*() to emit user-defined events.
  • Stream Metadata Management: Implements ovni_attr_*() API for better control.
  • Trace Format Update: Upgrades trace format to version 3 to support independent streams.

Task-Aware Libraries

  • New TAMPI design: The latest Task-Aware MPI (TAMPI) library significantly improve performance in highly parallel communication scenarios. The new design, based on advanced locking schemes, can leverage multiple communication contexts, drastically outperforming the original TAMPI library.

For more information and access to the repositories, please visit: https://github.com/bsc-pm/ompss-2-releases

Recent publications

  1. D. Álvarez, Kevin Sala and Vicenç Beltran, “nOS-V: Co-Executing HPC Applications Using System-Wide Task Scheduling,” 38th IEEE International Parallel & Distributed Processing Symposium (IPDPS), San Francisco, California, USA, May 27-31, 2024
  2. K. Sala et al, “ALPI: Enhancing Portability and Interoperability of Task-Aware Libraries,” Asynchronous Many-Task Systems and Applications (WAMPTA), Knoxville, Tennessee, USA, Feb. 14-16, 2024

Funding and Acknowledges

The STAR research group is co-financed by the Barcelona Zettaescale Laboratory, which receives funding from the Ministry for Digital Transformation and Public Services within the framework of the Resilience and Recovery Facility. Additionally, the STAR research group has been funded by the European Union’s Horizon 2020/EuroHPC research and innovation program under grant agreements No. 101034126 (EuPILOT). This work is co-financed by the Barcelona Zettascale Laboratory with reference REGAGE22e00058408992 which is financed by the Ministry for Digital Transformation and of Public Services, within the framework of the Resilience and Recovery Facility - and the European Union - NextGenerationEU. This work has also been supported by the Ramón y Cajal program [grant number RYC2019-027592-I] and the Severo Ochoa Centre of Excellence accreditation [grant number CEX2021-001148-S], both financed by the MCIN/AEI/10.13039/501100011033. Furthermore, the Departament de Recerca i Universitats de la Generalitat de Catalunya has funded the Programming Models research group at BSC-UPC [grant number 2021 SGR01007].