Balogh, Gábor Dániel and Lotz, Johannes and du Toit, Jacques and Naumann, Uwe and Reguly, István Zoltán (2026) Performance Portable Adjoints for Structured Mesh Applications with OPS. ACM TRANSACTIONS ON MATHEMATICAL SOFTWARE, 52 (3). pp. 1-33. ISSN 0098-3500
|
Text
OPS_AD_Draft.pdf - Accepted Version Available under License Creative Commons Attribution. Download (825kB) | Preview |
Abstract
Derivatives are crucial for engineering and scientific applications like optimization and inverse problems. While finite difference approximations can estimate derivatives, they are computationally expensive and inaccurate. Algorithmic Differentiation (AD) provides an efficient and exact method to compute derivatives by treating computer programs as mathematical functions and applying the chain rule of calculus. Our work focuses on adjoint-mode AD for structured mesh stencil applications. We extend the Oxford Parallel library for Structured mesh solvers (OPS) domain-specific language to compute derivatives using the reverse mode of AD. OPS allows developers to express mesh algorithms from a high-level code targeting multiple hardware from the same source. Taking advantage of the domain-specific abstraction, the extension creates a compact adjoint tape at the level of computational loops and generates the platform-specific (OpenMP and CUDA) parallel implementations for the adjoint loops, using the user-provided primal and adjoint stencil-kernels. We differentiate three example applications written in OPS, demonstrating similar performance to the original applications on both CPUs and GPUs. On these applications, computing derivatives only took 3.7-9.7x time (including the evaluation of the application) compared to the original applications, which is in line with state-of-the-art tools.
| Item Type: | Article |
|---|---|
| Uncontrolled Keywords: | Algorithmic differentiation, Structured meshes, OpenMP, CUDA, HighPerformance Computing |
| Subjects: | Q Science / természettudomány > QA Mathematics / matematika Q Science / természettudomány > QA Mathematics / matematika > QA75 Electronic computers. Computer science / számítástechnika, számítógéptudomány |
| SWORD Depositor: | MTMT SWORD |
| Depositing User: | MTMT SWORD |
| Date Deposited: | 15 Sep 2026 09:08 |
| Last Modified: | 15 Sep 2026 09:09 |
| URI: | https://real.mtak.hu/id/eprint/246209 |
Actions (login required)
![]() |
View Item |




