[Paper Review] Efficient implementation of immersed boundary-lattice Boltzmann method for massive particle-laden flows Part I: Serial computing
This paper presents a highly optimized, serial implementation of the immersed boundary-lattice Boltzmann method (IB-LBM) for simulating massive particle-laden flows with over 10⁴ particles. By introducing a swap algorithm for incompressible LBM, a localized grid-to-point method for IBM, an improved grid search for particle interactions, and a symmetry algorithm for half-calculation, the method achieves up to 36 MLUPS (2D) and 12 MLUPS (3D) in particle-free flows, and maintains over 15 MLUPS (2D) and 7 MLUPS (3D) even in dense particle-laden flows with solid volume fractions up to 0.40.
Immersed boundary-lattice Boltzmann method (IB-LBM) has been widely used for simulation of particle-laden flows recently. However, it was limited to small-scale simulations with no more than O(103) particles. Here, we expand IB-LBM for massive particle-laden flows with more than O(104) particles by two sequential works. First is the Part I: serial computing on a single CPU core and following the Part II: parallel computing on many CPU cores. In this Part I paper, a highly efficient and localized implementation of IB-LBM is proposed for serial computing. We optimize in three main aspects: swap algorithm for incompressible LBM, local grid-to-point algorithm for IBM and improved grid search algorithm for particle pair short-range interaction. In addition, symmetry algorithm is proposed for the half-calculation of LB collision and external force term. The computational performance on a single CPU core is analyzed. Different scales of two dimensional (2D) and three-dimensional (3D) particles settling in closed cavities are used for testing. The solid volume fraction is varied from 0 to 0.40. Simulation results demonstrate that all calculation parts are dramatically decreased by the improved algorithm. For the particle-free flows, the Mega Lattice Site Update per Second (MLUPS) can be achieved up to 36 (2D) and 12 (3D) using the improved algorithm. For the particle-laden flows, MLUPS can be achieved no lower than 15 (2D) and 7 (3D) in the simulations of dense flows. At last, we discuss the potential of the new algorithms for the high-performance computation of the large-scale systems of particle-laden flows with MPI parallel technique.
Motivation & Objective
- To overcome the limitation of existing IB-LBM methods, which are restricted to small-scale simulations with ≤ O(10³) particles.
- To enable efficient simulation of massive particle-laden flows with > O(10⁴) particles on a single CPU core.
- To develop algorithmic optimizations that drastically reduce computational cost in LBM and IBM components.
- To lay the foundation for high-performance parallel computing of large-scale particle-laden systems using MPI.
Proposed method
- A swap algorithm is introduced to improve the efficiency of the incompressible lattice Boltzmann method (LBM) by reordering collision and streaming steps.
- A localized grid-to-point algorithm is developed for the immersed boundary method (IBM), reducing computational overhead in force interpolation.
- An improved grid search algorithm is proposed to accelerate short-range particle-particle interactions by limiting search to neighboring grid cells.
- A symmetry algorithm is implemented to compute only half of the lattice Boltzmann collision and external force terms, exploiting symmetry to reduce redundant calculations.
- The entire implementation is optimized for serial execution on a single CPU core, focusing on memory access locality and computational efficiency.
- The method is validated across multiple scales of 2D and 3D particle settling simulations in closed cavities with varying solid volume fractions.
Experimental results
Research questions
- RQ1Can the IB-LBM be efficiently scaled to simulate flows with more than O(10⁴) particles on a single CPU core?
- RQ2How can the computational cost of LBM collision, IBM force interpolation, and particle-particle interactions be minimized in massive particle-laden flows?
- RQ3What performance gains can be achieved through algorithmic optimizations such as symmetry-based half-calculation and localized grid search?
- RQ4To what extent can the improved algorithm maintain high performance in dense particle flows with solid volume fractions up to 0.40?
- RQ5What is the potential of the optimized serial implementation as a foundation for future MPI-parallelized large-scale simulations?
Key findings
- The optimized IB-LBM achieves up to 36 MLUPS in 2D particle-free flows and 12 MLUPS in 3D particle-free flows on a single CPU core.
- In dense particle-laden flows with solid volume fractions up to 0.40, the method maintains performance at no lower than 15 MLUPS (2D) and 7 MLUPS (3D).
- The swap algorithm significantly reduces computational overhead in the LBM collision step by improving data locality and reducing memory access latency.
- The localized grid-to-point algorithm for IBM reduces the cost of force interpolation by restricting computations to relevant grid points near particles.
- The improved grid search algorithm accelerates short-range particle-particle interactions by limiting the search to physically adjacent grid cells.
- The symmetry-based half-calculation algorithm reduces redundant computation of symmetric terms in the LBM collision and external force evaluation, enhancing overall efficiency.
Better researchstarts right now
From reading papers to final review, dramatically reduce your research time.
No credit card · Free plan available
This review was created by AI and reviewed by human editors.