OpenSBLI: automated code-generation for heterogeneous computing architectures applied to compressible fluid dynamics on structured grids
OpenSBLI: automated code-generation for heterogeneous computing architectures applied to compressible fluid dynamics on structured grids
OpenSBLI is an open-source code-generation system for compressible fluid dynamics (CFD) on heterogeneous computing architectures. Written in Python, OpenSBLI is an explicit high-order finite-difference solver on structured curvilinear meshes. Shock-capturing is performed by a choice of high-order Weighted Essentially Non-Oscillatory (WENO) or Targeted Essentially Non-Oscillatory (TENO) schemes. OpenSBLI generates a complete CFD solver in the Oxford Parallel Structured (OPS) domain specific language. The OPS library is embedded in C code, enabling massively-parallel execution of the code on a variety of high-performance computing architectures, including GPUs. The present paper presents a code base that has been completely rewritten from the earlier proof of concept (Jacobs et al, JoCS 18 (2017), 12-23), allowing shock capturing, coordinate transformations for complex geometries, and a wide range of boundary conditions, including solid walls with and without heat transfer. A suite of validation and verification cases are presented, plus demonstration of a large-scale Direct Numerical Simulation (DNS) of a transitional Shockwave Boundary Layer Interaction (SBLI). The code is shown to have good weak and strong scaling on multi-GPU clusters. We demonstrate that code-generation and domain specific languages are suitable for performing efficient large-scale simulations of complex fluid flows on emerging computing architectures.
Lusher, David
dd681c9e-ceae-409b-8153-8248c13a18e5
Jammy, Satya P
5267fe44-6c22-473c-b9f0-8e1df884fada
Sandham, Neil
0024d8cd-c788-4811-a470-57934fbdcf97
21 June 2021
Lusher, David
dd681c9e-ceae-409b-8153-8248c13a18e5
Jammy, Satya P
5267fe44-6c22-473c-b9f0-8e1df884fada
Sandham, Neil
0024d8cd-c788-4811-a470-57934fbdcf97
Lusher, David, Jammy, Satya P and Sandham, Neil
(2021)
OpenSBLI: automated code-generation for heterogeneous computing architectures applied to compressible fluid dynamics on structured grids.
Computer Physics Communications, 267, [108063].
(doi:10.1016/j.cpc.2021.108063).
Abstract
OpenSBLI is an open-source code-generation system for compressible fluid dynamics (CFD) on heterogeneous computing architectures. Written in Python, OpenSBLI is an explicit high-order finite-difference solver on structured curvilinear meshes. Shock-capturing is performed by a choice of high-order Weighted Essentially Non-Oscillatory (WENO) or Targeted Essentially Non-Oscillatory (TENO) schemes. OpenSBLI generates a complete CFD solver in the Oxford Parallel Structured (OPS) domain specific language. The OPS library is embedded in C code, enabling massively-parallel execution of the code on a variety of high-performance computing architectures, including GPUs. The present paper presents a code base that has been completely rewritten from the earlier proof of concept (Jacobs et al, JoCS 18 (2017), 12-23), allowing shock capturing, coordinate transformations for complex geometries, and a wide range of boundary conditions, including solid walls with and without heat transfer. A suite of validation and verification cases are presented, plus demonstration of a large-scale Direct Numerical Simulation (DNS) of a transitional Shockwave Boundary Layer Interaction (SBLI). The code is shown to have good weak and strong scaling on multi-GPU clusters. We demonstrate that code-generation and domain specific languages are suitable for performing efficient large-scale simulations of complex fluid flows on emerging computing architectures.
Text
OpenSBLI_CPC_preprint_double
- Accepted Manuscript
More information
Accepted/In Press date: 24 May 2021
e-pub ahead of print date: 11 June 2021
Published date: 21 June 2021
Identifiers
Local EPrints ID: 449703
URI: http://eprints.soton.ac.uk/id/eprint/449703
ISSN: 0010-4655
PURE UUID: 2d371d53-d527-49ca-a19c-960188225292
Catalogue record
Date deposited: 11 Jun 2021 16:31
Last modified: 17 Mar 2024 06:37
Export record
Altmetrics
Contributors
Author:
David Lusher
Author:
Satya P Jammy
Author:
Neil Sandham
Download statistics
Downloads from ePrints over the past year. Other digital versions may also be available to download e.g. from the publisher's website.
View more statistics