Speaker
Description
The rapid evolution of computing architectures toward increasing heterogeneity — combining multi-core CPUs with accelerators from multiple vendors — poses major challenges for performance, portability, and long-term sustainability of high-energy physics (HEP) software. Maintaining separate implementations for each architecture is costly, error-prone, and difficult to scale as both hardware and software ecosystems evolve.
The alpaka (Abstraction Library for Parallel Kernel Acceleration) performance portability library addresses these challenges by providing a header-only C++ abstraction for explicit parallel programming across a broad range of back-ends. These include GPUs from NVIDIA, AMD and Intel, FPGAs from Altera, as well as multi-core CPUs leveraging OpenMP, oneTBB, and standard C++ threading. Alpaka exposes well-defined execution and memory hierarchies, enabling single-source implementations while preserving fine-grained control over performance-critical aspects such as execution configuration and memory access patterns, and achieving near native performance on multiple back-ends.
Alpaka is an open source project developed at HZDR and CERN, and is used in both production and research software across several scientific domains. At HZDR, it is used in the PIConGPU Particle-in-Cell simulation code and in the mallocMC memory allocation library. At HZB, alpaka is a core component of the RAYX software for the design and optimization of beamlines in synchrotron light source facilities. In HEP, alpaka is used in production within the CMS experiment’s CMSSW framework, where it supports shared CPU and GPU implementations of reconstruction and trigger workloads. At CERN, alpaka is also used in other software projects, including as one of several backends in the traccc experimental framework for ACTS track reconstruction and in SOFIE for machine learning inference.
This talk presents alpaka’s design principles and performance characteristics, reviews its evolution through recent 2.x releases, and discusses ongoing development and long-term plans toward alpaka 3.