Towards Heterogeneous Exascale CFD with a Single Fortran Code Base: OpenMP Target Acceleration of the High-Order Unstructured Solver UCNS3D
Abstract
Heterogeneous exascale systems are reshaping computational fluid dynamics, yet rewriting mature high-order solvers for accelerators can fragment code bases and weaken reproducibility. We present a single-source OpenMP target modernisation of UCNS3D, a high-order unstructured finite-volume solver for compressible flows. The common CPU/GPU implementation preserves its numerical formulation, Fortran code base, and workflows. Rather than porting isolated kernels, we enable the complete explicit time-advancement path: high-order reconstruction, gradient evaluation, inviscid and viscous fluxes, boundary treatment, halo exchange, and solution update. The implementation uses persistent target data regions, flat run-time arrays, compile-time sizing of temporary storage, explicit local algebra, target-callable routines, and GPU-aware MPI with device-resident buffers. These choices address the irregular stencils, complex data structures, and substantial temporary storage of high-order unstructured CFD. Verification using the compressible Taylor-Green vortex shows CPU and GPU dissipation histories agreeing to machine precision on LUMI and with published reference data. A single-node run on the ARCHER2 GPU platform provides an independent portability check. End-to-end performance is evaluated on fully populated nodes using Taylor-Green vortex, LM1021 sonic-boom, and NASA high-lift CRM benchmarks. Relative to the previous production implementation, the refactored CPU path is 1.27-1.67 times faster, while GPU offload delivers same-node speed-ups of 2.71-4.05 and 84-101 percent strong-scaling efficiency. The results show that standards-based OpenMP provides portable, production-scale acceleration without sacrificing numerical fidelity, CPU performance, or software sustainability.
Related
- An unstructured finite-volume Helmholtz method with perfectly matched layers for heterogeneous two-phase acoustics
- Uniform convergence of diffusion synthetic acceleration for heterogeneous slab transport
- A Formal Proof of Riemann Hypothesis from Existence Alone, the Sign Excepted by Theorem: The Constructed Witness, the Identity Cone over the Fixed Locus, the Grounded Counter-Model, and the Cure Theorem Proved in Lean 4 and Re-executed in Fortran
- Capacity Control in a Single-Server Diagnostic--Treatment Queue with Heterogeneous Treatment Modes
- Exponential stability of port-Hamiltonian systems with unstructured, measurable Hamiltonian densities
BibTeX
@misc{tsoutsanis2026towards,
title = {{Towards Heterogeneous Exascale CFD with a Single Fortran Code Base: OpenMP Target Acceleration of the High-Order Unstructured Solver UCNS3D}},
author = {Panagiotis Tsoutsanis and Michal Uminski and Christopher Day and David Henty},
howpublished = {arXiv},
year = {2026},
month = sep,
doi = {10.48550/arxiv.2609.07387},
eprint = {2609.07387},
archivePrefix = {arXiv},
url = {https://arxiv.org/abs/2609.07387},
note = {CC BY-SA 4.0},
}
RIS
TY - UNPB
TI - Towards Heterogeneous Exascale CFD with a Single Fortran Code Base: OpenMP Target Acceleration of the High-Order Unstructured Solver UCNS3D
AU - Panagiotis Tsoutsanis
AU - Michal Uminski
AU - Christopher Day
AU - David Henty
PY - 2026
DA - 2026/09/07
PB - arXiv
DO - 10.48550/arxiv.2609.07387
UR - https://arxiv.org/abs/2609.07387
AB - Heterogeneous exascale systems are reshaping computational fluid dynamics, yet rewriting mature high-order solvers for accelerators can fragment code bases and weaken reproducibility. We present a single-source OpenMP target modernisation of UCNS3D, a high-order unstructured finite-volume solver for compressible flows. The common CPU/GPU implementation preserves its numerical formulation, Fortran code base, and workflows. Rather than porting isolated kernels, we enable the complete explicit time-advancement path: high-order reconstruction, gradient evaluation, inviscid and viscous fluxes, boundary treatment, halo exchange, and solution update. The implementation uses persistent target data regions, flat run-time arrays, compile-time sizing of temporary storage, explicit local algebra, target-callable routines, and GPU-aware MPI with device-resident buffers. These choices address the irregular stencils, complex data structures, and substantial temporary storage of high-order unstructured CFD. Verification using the compressible Taylor-Green vortex shows CPU and GPU dissipation histories agreeing to machine precision on LUMI and with published reference data. A single-node run on the ARCHER2 GPU platform provides an independent portability check. End-to-end performance is evaluated on fully populated nodes using Taylor-Green vortex, LM1021 sonic-boom, and NASA high-lift CRM benchmarks. Relative to the previous production implementation, the refactored CPU path is 1.27-1.67 times faster, while GPU offload delivers same-node speed-ups of 2.71-4.05 and 84-101 percent strong-scaling efficiency. The results show that standards-based OpenMP provides portable, production-scale acceleration without sacrificing numerical fidelity, CPU performance, or software sustainability.
ER -