The University of Southampton
University of Southampton Institutional Repository

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: 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.
0010-4655
Lusher, David
dd681c9e-ceae-409b-8153-8248c13a18e5
Jammy, Satya P
5267fe44-6c22-473c-b9f0-8e1df884fada
Sandham, Neil
0024d8cd-c788-4811-a470-57934fbdcf97
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).

Record type: Article

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
Download (1MB)

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
ORCID for David Lusher: ORCID iD orcid.org/0000-0001-8874-5290
ORCID for Satya P Jammy: ORCID iD orcid.org/0000-0002-8099-8573
ORCID for Neil Sandham: ORCID iD orcid.org/0000-0002-5107-0944

Catalogue record

Date deposited: 11 Jun 2021 16:31
Last modified: 17 Mar 2024 06:37

Export record

Altmetrics

Contributors

Author: David Lusher ORCID iD
Author: Satya P Jammy ORCID iD
Author: Neil Sandham ORCID iD

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

Atom RSS 1.0 RSS 2.0

Contact ePrints Soton: eprints@soton.ac.uk

ePrints Soton supports OAI 2.0 with a base URL of http://eprints.soton.ac.uk/cgi/oai2

This repository has been built using EPrints software, developed at the University of Southampton, but available to everyone to use.

We use cookies to ensure that we give you the best experience on our website. If you continue without changing your settings, we will assume that you are happy to receive cookies on the University of Southampton website.

×