Optimization and acceleration of flow simulations for CFD on CPU/GPU architecture

被引:11
作者
Lei, Jiang [1 ]
Li, Da-li [1 ]
Zhou, Yun-long [1 ]
Liu, Wei [1 ]
机构
[1] Natl Univ Def Technol, Coll Aerosp Sci & Engn, Changsha 410073, Hunan, Peoples R China
关键词
Euler equation; GPU; CUDA; CFD; DIRECT NUMERICAL-SIMULATION; INCOMPRESSIBLE FLOWS; GPU; SOLVER;
D O I
10.1007/s40430-019-1793-9
中图分类号
TH [机械、仪表工业];
学科分类号
0802 ;
摘要
With the increasing requirement of high computational power in computational fluid dynamics (CFD) field, the graphic processing units (GPUs) with great floating-point computing capability play more important roles. This work explores the porting of an Euler solver from central processing units (CPUs) to three different CPU/GPU heterogeneous hardware platforms using MUSCL and NND schemes, and then the computational acceleration of one-dimensional (1D) Riemann problem and two-dimensional (2D) flow past a forward-facing step is investigated. Based on hardware structures, memory models and programming methods, the working manner of heterogeneous systems was firstly introduced in this paper. Subsequently, three different heterogeneous methods employed in the current study were presented in detail, while porting all parts of the solver loop to GPU possessed the best performance among them. Several optimization strategies suitable for the solver were adopted to achieve substantial execution speedups, while using shared memory on GPU was relatively rarely reported in CFD literature. Finally, the simulation of 1D Riemann verified the reliability of the modified codes on GPU, demonstrating strong ability in capturing discontinuities of both schemes. The two cases with their 1D computational domains discretized into 10,000 cells both realized a speedup exceeding 25, compared to that executed on a single-core CPU. In simulation of the 2D step flow, we came to the highest speedups of 260 for MUSCL scheme with 800x400 mesh size and 144 for NND scheme with 400x200 computational domain, respectively.
引用
收藏
页数:15
相关论文
共 39 条
  • [1] Toward a GPU-aware comparison of explicit and implicit CFD simulations on structured meshes
    Aissa, Mohamed
    Verstraete, Tom
    Vuik, Cornelis
    [J]. COMPUTERS & MATHEMATICS WITH APPLICATIONS, 2017, 74 (01) : 201 - 217
  • [2] [Anonymous], VALIDITY SINGLE PROC
  • [3] CPU/GPU computing for a multi-block structured grid based high-order flow solver on a large heterogeneous system
    Cao, Wei
    Xu, Chuan-fu
    Wang, Zheng-hua
    Yao, Lu
    Liu, Hua-yong
    [J]. CLUSTER COMPUTING-THE JOURNAL OF NETWORKS SOFTWARE TOOLS AND APPLICATIONS, 2014, 17 (02): : 255 - 270
  • [4] Cheng J., 2014, Professional CUDA c Programming
  • [5] GPU acceleration of a petascale application for turbulent mixing at high Schmidt number using OpenMP 4.5
    Clay, M. P.
    Buaria, D.
    Yeung, P. K.
    Gotoh, T.
    [J]. COMPUTER PHYSICS COMMUNICATIONS, 2018, 228 : 100 - 114
  • [6] Cook S, 2013, CUDA PROGRAMMING: A DEVELOPER'S GUIDE TO PARALLEL COMPUTING WITH GPUS, P1
  • [7] Assessment of WENO schemes for multi-dimensional Euler equations using GPU
    Darian, Hossein Mahmoodi
    Esfahanian, Vahid
    [J]. INTERNATIONAL JOURNAL FOR NUMERICAL METHODS IN FLUIDS, 2014, 76 (12) : 961 - 981
  • [8] Deleon R, 2012, GPU ACCELERATED LARG
  • [9] Large-Eddy Simulations of Turbulent Incompressible Flows on GPU Clusters
    DeLeon, Rey
    Jacobsen, Dana
    Senocak, Inanc
    [J]. COMPUTING IN SCIENCE & ENGINEERING, 2013, 15 (01) : 26 - 33
  • [10] An efficient GPU implementation of cyclic reduction solver for high-order compressible viscous flow simulations
    Esfahanian, Vahid
    Baghapour, Behzad
    Torabzadeh, Mohammad
    Chizari, Hossain
    [J]. COMPUTERS & FLUIDS, 2014, 92 : 160 - 171