Skip to content
Preprint

Towards Heterogeneous Exascale CFD with a Single Fortran Code Base: OpenMP Target Acceleration of the High-Order Unstructured Solver UCNS3D

Sep 2026 · 0 citations · 51 references
Physics Mathematics

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.

View source

We use cookies to run the site and, with your consent, for analytics and to show ads. See our Cookie Policy.