Bridging the Vendor Gap: Enabling AMD GPU Support for Awkward Array via ROCm/HIP for the HL-LHC Era

📅 2026-09-21
📈 Citations: 0
Influential: 0
📄 PDF
🤖 AI Summary
为解决HL-LHC时代对分析吞吐量的需求,通过ROCm/HIP为Awkward Array添加AMD GPU支持,并采用优化模式以恢复CUDA级别的性能。
📝 Abstract
The High-Luminosity LHC (HL-LHC) will demand order-of-magnitude gains in analysis throughput, and increasingly those gains must come from GPUs that are not made by a single vendor. Leadership-class systems such as El Capitan, Frontier and LUMI are built on AMD accelerators, yet the Scikit-HEP analysis stack---and Awkward Array in particular---has grown up CUDA-first. We report on $rawkward$, a Rust-backed kernel engine that adds a ROCm/HIP backend for Awkward Array's nested, jagged, variable-length data structures. Our central finding is that a naive source-level port of CUDA kernels to HIP loses $5$--$10\times$ in performance on irregular kernels, because AMD's $64$-lane wavefronts, higher register pressure and more expensive divergence behave fundamentally differently from NVIDIA's $32$-thread warps. We show that a small, reusable set of optimization patterns---loop flattening, $128$-bit vectorized loads, splitting fused kernels, and profile-guided launch configuration---recovers CUDA-class performance without changing the public API. A Rust macro-and-match dispatch layer keeps a single, backend-agnostic call site while emitting vendor-specific kernel strategies, and the type system enforces buffer-size and lifetime correctness at compile time. On a two-socket AMD Instinct MI210 node we measure GPU speedups from $1.03\times$ (bandwidth-bound $sum$) up to $12.5\times$ ($count$) over $128$ EPYC~7763 CPU cores, and the Rust CPU kernels match or beat on aggregate the incumbent C++ kernels (geometric-mean runtime ratio $0.37\times$ across twelve kernels). We argue that these patterns constitute a practical recipe for performance-portable, vendor-agnostic HEP analysis kernels.
Problem

Research questions and friction points this paper is trying to address.

AMD GPU
Awkward Array
ROCm/HIP
HL-LHC
performance portability
Innovation

Methods, ideas, or system contributions that make the work stand out.

ROCm/HIP backend
performance optimization
Rust-based kernel engine
vendor-agnostic support
🔎 Similar Papers
No similar papers found.
I
Ianna Osborne
Princeton University, Princeton, NJ 08544, USA, on behalf of the Institute for Research and Innovation in Software for High Energy Physics (IRIS-HEP)
M
Maxym Naumchyk
Princeton University, Princeton, NJ 08544, USA, on behalf of the Institute for Research and Innovation in Software for High Energy Physics (IRIS-HEP)
T
Tai Sakuma
Princeton University, Princeton, NJ 08544, USA, on behalf of the Institute for Research and Innovation in Software for High Energy Physics (IRIS-HEP)
A
Andres Rios-Tascon
Princeton University, Princeton, NJ 08544, USA, on behalf of the Institute for Research and Innovation in Software for High Energy Physics (IRIS-HEP)
P
Peter Elmer
Princeton University, Princeton, NJ 08544, USA, on behalf of the Institute for Research and Innovation in Software for High Energy Physics (IRIS-HEP)