Content area

Abstract

We present an efficient implementation for running three-dimensional numerical simulations of fluid-structure interaction problems on single GPUs, based on Nvidia CUDA through Numba and Python. The incompressible flow around moving bodies is solved in this framework through an implementation of the Immersed Boundary Method tailored for the GPU, where different GPU grid architectures are exploited to optimize the overall performance. By targeting a single-GPU, we avoid GPU-CPU and GPU-GPU communication bottlenecks, since all the simulation data is always in the global memory of the GPU. We provide details about the numerical methodology, the implementation of the algorithm in the GPU and the memory management, critical in single-GPU implementations. Additionally, we verify the results comparing with our analogous CPU-based parallel solver and assess satisfactorily the efficiency of the code in terms of the relative computing time of the different operations and the scaling of the CPU code compared to a single GPU case. Overall, our tests show that the single-GPU code is between 34 to 54 times faster than the CPU solver in peak performance (96-128 CPU cores). This speedup mainly comes from the change in the method of solution of the linear systems of equations, while the speedup in sections of the algorithm that are equivalent in the CPU and GPU implementations is more modest (i.e., \(\times 1.6-3\) speedup in the computation of the non-linear terms). Finally, we showcase the performance of this new GPU implementation in two applications of interest, one for external flows (i.e., bioinspired aerodynamics) and one for internal flows (i.e., cardiovascular flows), demonstrating the strong scaling of the code in two different GPU cards (hardware).%\red{for both single and double precision.}

Details

1009240
Title
A Python-based flow solver for numerical simulations using an immersed boundary method on single GPUs
Publication title
arXiv.org; Ithaca
Publication year
2024
Publication date
Dec 3, 2024
Section
Physics (Other)
Publisher
Cornell University Library, arXiv.org
Source
arXiv.org
Place of publication
Ithaca
Country of publication
United States
University/institution
Cornell University Library arXiv.org
e-ISSN
2331-8422
Source type
Working Paper
Language of publication
English
Document type
Working Paper
Publication history
 
 
Online publication date
2024-12-05
Milestone dates
2024-06-28 (Submission v1); 2024-12-03 (Submission v2)
Publication history
 
 
   First posting date
05 Dec 2024
ProQuest document ID
3074223662
Document URL
https://www.proquest.com/working-papers/python-based-flow-solver-numerical-simulations/docview/3074223662/se-2?accountid=208611
Full text outside of ProQuest
Copyright
© 2024. This work is published under http://creativecommons.org/licenses/by-nc-nd/4.0/ (the “License”). Notwithstanding the ProQuest Terms and Conditions, you may use this content in accordance with the terms of the License.
Last updated
2024-12-06
Database
ProQuest One Academic