# zbMATH — the first resource for mathematics

Running unstructured grid-based CFD solvers on modern graphics hardware. (English) Zbl 1394.76084
Summary: Techniques used to implement an unstructured grid solver on modern graphics hardware are described. The three-dimensional Euler equations for inviscid, compressible flow are considered. Effective memory bandwidth is improved by reducing total global memory access and overlapping redundant computation, as well as using an appropriate numbering scheme and data layout. The applicability of per-block shared memory is also considered. The performance of the solver is demonstrated on two benchmark cases: a NACA0012 wing and a missile. For a variety of mesh sizes, an average speed-up factor of roughly $$9.5 \times$$ is observed over the equivalent parallelized OpenMP code running on a quad-core CPU, and roughly $$33 \times$$ over the equivalent code running in serial.

##### MSC:
 76M25 Other numerical methods (fluid mechanics) (MSC2010) 65Y10 Numerical algorithms for specific classes of architectures
##### Keywords:
unstructured grids; graphics hardware
CUDA; OpenCL
Full Text:
##### References:
 [1] NVIDIA Corporation 2008 http://developer.nvidia.com/cuda [2] Brandvik, Acceleration of a two-dimensional Euler flow solver using commodity graphics hardware, Proceedings of the Institution of Mechanical Engineers, Part C: Journal of Mechanical Engineering Science 221 pp 1745– (2007) [3] Brandvik T Pullan G Acceleration of a 3D Euler solver using commodity graphics hardware [4] Elsen, Large calculation of the flow over a hypersonic vehicle using a GPU, Journal of Computational Physics 227 pp 10148– (2008) · Zbl 1218.76035 [5] Tölke, Implementation of a Lattice Boltzmann kernel using the compute unified device architecture developed by nVIDIA, Computing and Visualization in Science (2008) [6] Phillips E Zhang Y Davis R Owens J Cuda implementation of a Navier-stokes solver on multi-gpu desktop platforms for incompressible flows [7] Thibault J Senocak I Cuda implementation of a Navier-Stokes solver on multi-gpu desktop platforms for incompressible flows [8] Klockner A Warburton T Bridge J Hesthaven JS Nodal discontinuous galerkin methods on graphics processors 2009 [9] Goodnight, CUDA/OpenGL Fluid Simulation (2007) [10] Owens, A survey of general-purpose computation on graphics hardware, Computer Graphics Forum 26 (1) pp 80– (2007) · Zbl 05162882 [11] Harris, GPU Gems (2004) [12] Scheidegger, Practical CFD simulations on the GPU using SMAC, Computer Graphics Forum 24 pp 715– (2005) · Zbl 05162793 [13] Hagen, Lecture Notes in Computer Science, in: Proceedings of the 6th International Conference on Computational Science pp 220– (2006) · Zbl 1157.76358 [14] Löhner, Applied CFD Techniques: An Introduction Based on Finite Element Methods (2008) [15] Khronos OpenCL Working Group 2008
This reference list is based on information provided by the publisher or from digital mathematics libraries. Its items are heuristically matched to zbMATH identifiers and may contain data conversion errors. It attempts to reflect the references listed in the original paper as accurately as possible without claiming the completeness or perfect precision of the matching.