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 We...
Gespeichert in:
Veröffentlicht in: | arXiv.org 2020-07 |
---|---|
Hauptverfasser: | , , |
Format: | Artikel |
Sprache: | eng |
Schlagworte: | |
Online-Zugang: | Volltext |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
container_end_page | |
---|---|
container_issue | |
container_start_page | |
container_title | arXiv.org |
container_volume | |
creator | Lusher, David J Jammy, Satya P Sandham, Neil D |
description | 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. |
doi_str_mv | 10.48550/arxiv.2007.14933 |
format | Article |
fullrecord | <record><control><sourceid>proquest_arxiv</sourceid><recordid>TN_cdi_arxiv_primary_2007_14933</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><sourcerecordid>2428806521</sourcerecordid><originalsourceid>FETCH-LOGICAL-a521-b4d6f09f2149e12dbdad8c42843aee8e04865198b426b64c43067ea055bfce443</originalsourceid><addsrcrecordid>eNotkMtOwzAQRS0kJKrSD2CFJdYpjh-py65UPCpV6oLuIyeetK6SOPiB4A_4bNyU1UhXZ-7cuQjd5WTOpRDkUblv8zWnhCzmOV8ydoUmlLE8k5zSGzTz_kQIocWCCsEm6Hc3QP_xvN084VUMtlMBNK6thuwAPTgVjO1xYx0-QgBnz6KNPhHdEIPpD1i5-mgC1CE68FgNQ2uSQ7AjkiRvqhZw00ajsf7pVWdqj5OnDy6OSxofnNH-Fl03qvUw-59TtH992a_fs-3ubbNebTMlaJ5VXBcNWTY0vQY51ZVWWtacSs4UgATCZSHypaw4LaqC15yRYgGKCFE1NXDOpuj-YjvWVA7OdMr9lOe6yrGuRDxciMHZzwg-lCcbXZ8ylTQdkqRIQdgfP3RwxA</addsrcrecordid><sourcetype>Open Access Repository</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype><pqid>2428806521</pqid></control><display><type>article</type><title>OpenSBLI: Automated code-generation for heterogeneous computing architectures applied to compressible fluid dynamics on structured grids</title><source>arXiv.org</source><source>Free E- Journals</source><creator>Lusher, David J ; Jammy, Satya P ; Sandham, Neil D</creator><creatorcontrib>Lusher, David J ; Jammy, Satya P ; Sandham, Neil D</creatorcontrib><description>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.</description><identifier>EISSN: 2331-8422</identifier><identifier>DOI: 10.48550/arxiv.2007.14933</identifier><language>eng</language><publisher>Ithaca: Cornell University Library, arXiv.org</publisher><subject>Boundary conditions ; Boundary layer interaction ; Boundary layer transition ; Compressible fluids ; Computational fluid dynamics ; Computer simulation ; Coordinate transformations ; Direct numerical simulation ; Domain names ; Domain specific languages ; Finite difference method ; Fluid dynamics ; Fluid flow ; Physics - Computational Physics ; Physics - Fluid Dynamics ; Shock capturing ; Source code ; Structured grids (mathematics)</subject><ispartof>arXiv.org, 2020-07</ispartof><rights>2020. This work is published under http://arxiv.org/licenses/nonexclusive-distrib/1.0/ (the “License”). Notwithstanding the ProQuest Terms and Conditions, you may use this content in accordance with the terms of the License.</rights><rights>http://arxiv.org/licenses/nonexclusive-distrib/1.0</rights><oa>free_for_read</oa><woscitedreferencessubscribed>false</woscitedreferencessubscribed></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><link.rule.ids>228,230,776,780,881,27902</link.rule.ids><backlink>$$Uhttps://doi.org/10.48550/arXiv.2007.14933$$DView paper in arXiv$$Hfree_for_read</backlink><backlink>$$Uhttps://doi.org/10.1016/j.cpc.2021.108063$$DView published paper (Access to full text may be restricted)$$Hfree_for_read</backlink></links><search><creatorcontrib>Lusher, David J</creatorcontrib><creatorcontrib>Jammy, Satya P</creatorcontrib><creatorcontrib>Sandham, Neil D</creatorcontrib><title>OpenSBLI: Automated code-generation for heterogeneous computing architectures applied to compressible fluid dynamics on structured grids</title><title>arXiv.org</title><description>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.</description><subject>Boundary conditions</subject><subject>Boundary layer interaction</subject><subject>Boundary layer transition</subject><subject>Compressible fluids</subject><subject>Computational fluid dynamics</subject><subject>Computer simulation</subject><subject>Coordinate transformations</subject><subject>Direct numerical simulation</subject><subject>Domain names</subject><subject>Domain specific languages</subject><subject>Finite difference method</subject><subject>Fluid dynamics</subject><subject>Fluid flow</subject><subject>Physics - Computational Physics</subject><subject>Physics - Fluid Dynamics</subject><subject>Shock capturing</subject><subject>Source code</subject><subject>Structured grids (mathematics)</subject><issn>2331-8422</issn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2020</creationdate><recordtype>article</recordtype><sourceid>BENPR</sourceid><sourceid>GOX</sourceid><recordid>eNotkMtOwzAQRS0kJKrSD2CFJdYpjh-py65UPCpV6oLuIyeetK6SOPiB4A_4bNyU1UhXZ-7cuQjd5WTOpRDkUblv8zWnhCzmOV8ydoUmlLE8k5zSGzTz_kQIocWCCsEm6Hc3QP_xvN084VUMtlMBNK6thuwAPTgVjO1xYx0-QgBnz6KNPhHdEIPpD1i5-mgC1CE68FgNQ2uSQ7AjkiRvqhZw00ajsf7pVWdqj5OnDy6OSxofnNH-Fl03qvUw-59TtH992a_fs-3ubbNebTMlaJ5VXBcNWTY0vQY51ZVWWtacSs4UgATCZSHypaw4LaqC15yRYgGKCFE1NXDOpuj-YjvWVA7OdMr9lOe6yrGuRDxciMHZzwg-lCcbXZ8ylTQdkqRIQdgfP3RwxA</recordid><startdate>20200729</startdate><enddate>20200729</enddate><creator>Lusher, David J</creator><creator>Jammy, Satya P</creator><creator>Sandham, Neil D</creator><general>Cornell University Library, arXiv.org</general><scope>8FE</scope><scope>8FG</scope><scope>ABJCF</scope><scope>ABUWG</scope><scope>AFKRA</scope><scope>AZQEC</scope><scope>BENPR</scope><scope>BGLVJ</scope><scope>CCPQU</scope><scope>DWQXO</scope><scope>HCIFZ</scope><scope>L6V</scope><scope>M7S</scope><scope>PIMPY</scope><scope>PQEST</scope><scope>PQQKQ</scope><scope>PQUKI</scope><scope>PRINS</scope><scope>PTHSS</scope><scope>GOX</scope></search><sort><creationdate>20200729</creationdate><title>OpenSBLI: Automated code-generation for heterogeneous computing architectures applied to compressible fluid dynamics on structured grids</title><author>Lusher, David J ; Jammy, Satya P ; Sandham, Neil D</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-a521-b4d6f09f2149e12dbdad8c42843aee8e04865198b426b64c43067ea055bfce443</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2020</creationdate><topic>Boundary conditions</topic><topic>Boundary layer interaction</topic><topic>Boundary layer transition</topic><topic>Compressible fluids</topic><topic>Computational fluid dynamics</topic><topic>Computer simulation</topic><topic>Coordinate transformations</topic><topic>Direct numerical simulation</topic><topic>Domain names</topic><topic>Domain specific languages</topic><topic>Finite difference method</topic><topic>Fluid dynamics</topic><topic>Fluid flow</topic><topic>Physics - Computational Physics</topic><topic>Physics - Fluid Dynamics</topic><topic>Shock capturing</topic><topic>Source code</topic><topic>Structured grids (mathematics)</topic><toplevel>online_resources</toplevel><creatorcontrib>Lusher, David J</creatorcontrib><creatorcontrib>Jammy, Satya P</creatorcontrib><creatorcontrib>Sandham, Neil D</creatorcontrib><collection>ProQuest SciTech Collection</collection><collection>ProQuest Technology Collection</collection><collection>Materials Science & Engineering Collection</collection><collection>ProQuest Central (Alumni Edition)</collection><collection>ProQuest Central UK/Ireland</collection><collection>ProQuest Central Essentials</collection><collection>ProQuest Central</collection><collection>Technology Collection</collection><collection>ProQuest One Community College</collection><collection>ProQuest Central Korea</collection><collection>SciTech Premium Collection</collection><collection>ProQuest Engineering Collection</collection><collection>Engineering Database</collection><collection>Publicly Available Content Database</collection><collection>ProQuest One Academic Eastern Edition (DO NOT USE)</collection><collection>ProQuest One Academic</collection><collection>ProQuest One Academic UKI Edition</collection><collection>ProQuest Central China</collection><collection>Engineering Collection</collection><collection>arXiv.org</collection><jtitle>arXiv.org</jtitle></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext</fulltext></delivery><addata><au>Lusher, David J</au><au>Jammy, Satya P</au><au>Sandham, Neil D</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>OpenSBLI: Automated code-generation for heterogeneous computing architectures applied to compressible fluid dynamics on structured grids</atitle><jtitle>arXiv.org</jtitle><date>2020-07-29</date><risdate>2020</risdate><eissn>2331-8422</eissn><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.</abstract><cop>Ithaca</cop><pub>Cornell University Library, arXiv.org</pub><doi>10.48550/arxiv.2007.14933</doi><oa>free_for_read</oa></addata></record> |
fulltext | fulltext |
identifier | EISSN: 2331-8422 |
ispartof | arXiv.org, 2020-07 |
issn | 2331-8422 |
language | eng |
recordid | cdi_arxiv_primary_2007_14933 |
source | arXiv.org; Free E- Journals |
subjects | Boundary conditions Boundary layer interaction Boundary layer transition Compressible fluids Computational fluid dynamics Computer simulation Coordinate transformations Direct numerical simulation Domain names Domain specific languages Finite difference method Fluid dynamics Fluid flow Physics - Computational Physics Physics - Fluid Dynamics Shock capturing Source code Structured grids (mathematics) |
title | OpenSBLI: Automated code-generation for heterogeneous computing architectures applied to compressible fluid dynamics on structured grids |
url | https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-02-09T04%3A39%3A00IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-proquest_arxiv&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.genre=article&rft.atitle=OpenSBLI:%20Automated%20code-generation%20for%20heterogeneous%20computing%20architectures%20applied%20to%20compressible%20fluid%20dynamics%20on%20structured%20grids&rft.jtitle=arXiv.org&rft.au=Lusher,%20David%20J&rft.date=2020-07-29&rft.eissn=2331-8422&rft_id=info:doi/10.48550/arxiv.2007.14933&rft_dat=%3Cproquest_arxiv%3E2428806521%3C/proquest_arxiv%3E%3Curl%3E%3C/url%3E&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_pqid=2428806521&rft_id=info:pmid/&rfr_iscdi=true |