FULL GPU Implementation of Lattice-Boltzmann Methods with Immersed Boundary Conditions for Fast Fluid Simulations

G Boroni, J Dottori, P Rinaldi


Lattice Boltzmann Method (LBM) has shown great potential in fluid simulations, but performance issues and difficulties to manage complex boundary conditions have hindered a wider application. The upcoming of Graphic Processing Units (GPU) Computing offered a possible solution for the performance issue, and methods like the Immersed Boundary (IB) algorithm proved to be a flexible solution to boundaries. Unfortunately, the implicit IB algorithm makes the LBM implementation in GPU a non-trivial task. This work presents a fully parallel GPU implementation of LBM in combination with IB. The fluid-boundary interaction is implemented via GPU kernels, using execution configurations and data structures specifically designed to accelerate each code execution. Simulations were validated against experimental and analytical data showing good agreement and improving the computational time. Substantial reductions of calculation rates were achieved, lowering down the required time to execute the same model in a CPU to about two magnitude orders.

Full Text:



NVIDIA. NVIDIA CUDA C Programing Guide Version 4.0: http://developer.download.nvidia.com/compute/DevZone/docs/html/C/doc/CUDA_C_Programming_Guide.pdf. 2010

Mark WR, Glanville RS, Akeley K, Kilgard MJ. Cg: a system for programming graphics hardware in a c-like language. ACM Trans. Graph. 2003; 22(3): 896–907. Crossref

NVIDIA. NVIDIA CUDA Home Page:http://developer.nvidia.com/category/zone/cuda-zone; 2007.

PGI. PGI CUDA Fortran Compiler, The Portland Group: http://www.pgroup.com/resources/cudafortran.htm; 2011.

Zhao Y. Lattice Boltzmann based PDE Solver on the GPU. Vis. Comput. 2007; 24(5): 323-333. Crossref

Tölke J. Implementation of a lattice Boltzmann kernel using the compute unified device architecture developed by NVIDIA. Computing and Visualization in Science. 2010; 13(1): 29–39. Crossref

Rinaldi PR, Dari EA, Vénere MJ, Clausse A. A Lattice-Boltzmann solver for 3D fluid simulation on GPU. Simulation Modelling Practice and Theory. 2012; 25: 163-171.

Boroni G, Dottori J, Dalponte D, Rinaldi P, Clausse A. An improved Immersed-Boundary algorithm for fluid-solid interaction in Lattice-Boltzmann simulations. Latin American Applied Research, accepted 2013.

Valero-Lara P, Pinelli A, Prieto-Matias Manuel. Accelerating Solid-Fluid Interaction using Lattice-Boltzmann and Immersed Boundary Coupled Simulations on Heterogeneous Platforms. Procedia Computer Science. 2014; 29: 50-61. Crossref

C. S. Peskin. The immersed boundary method. Acta Numerica, 2002; 11, 479-517. Crossref

Chen S, Doolen GD (1998). Lattice Boltzmann Methods for Fluid Flows, Annu. Rev. Fluid Mech. 30: 329-364. Crossref

Sukop M, Thorne D (2006). Lattice Boltzmann Modeling, 1st Edition. Springer.

Qian YH, d’Humie`res D, Lallemand P (1992). Lattice BGK models for Navier–Stokes equation. Europhys. Lett. 17: 479-484. Crossref

Mohamad AA, Kuzmin A (2010). A critical evaluation of force term in lattice Boltzmann method, natural convection problem. Internation Journal of Heat and Mass Transfer 53(5-6): 990-996. Crossref

Feng ZG, Michaelides EE (2004). The immersed boundary-lattice Boltzmann method for solving fluid–particles interaction problems. J Comp Phy 195: 602–28. Crossref

Cheng F, Zhang H (2010). Immersed boundary method and lattice Boltzmann method coupled FSI simulation of mitral leaflet flow. Computers & Fluid 39: 871-881. Crossref

Peskin CS (2002). The immersed boundary method. Acta Numer 11: 479–517. Crossref

Kuznik F, Obrecht C, Rusaouën G, Roux JJ (2009). LBM based flow simulation using GPU computing processor. Comput. Math. Appl. 59(7): 2380-2392. Crossref

Lammers P, Küster U (2007). Recent Performance Results of the Lattice Boltzmann Method. High Performance Computing on Vector Systems 2006 Part 2, Springer, Stuttgart, 51-59. Crossref

Kaminsky A (2015). Big CPU, Big Data. Rochester Institute of Technology.

Fast Fluid-structure Interaction Using Lattice Boltzmann and Immersed Boundary Methods, M. Mawson, P. V. Lara, J. Favier, A. Pinelli, A. Revell

Accelerating Solid-Fluid Interaction using Lattice-Boltzmann and Immersed Boundary Coupled. Simulations on Heterogeneous Platforms. Pedro Valero-Lara1, Alfredo Pinelli2, and Manuel Prieto-Matias3

Von Karman T (1964). Aerodynamics, 1st Edition. McGraw-Hill.

DOI: http://dx.doi.org/10.21152/1750-9548.11.1.1

Copyright (c) 2017 G Boroni, J Dottori, P Rinaldi

Creative Commons License
This work is licensed under a Creative Commons Attribution 4.0 International License.