7 research outputs found

    Zynq SoC based acceleration of the lattice Boltzmann method

    Get PDF
    Cerebral aneurysm is a life‐threatening condition. It is a weakness in a blood vessel that may enlarge and bleed into the surrounding area. In order to understand the surrounding environmental conditions during the interventions or surgical procedures, a simulation of blood flow in cerebral arteries is needed. One of the effective simulation approaches is to use the lattice Boltzmann (LB) method. Due to the computational complexity of the algorithm, the simulation is usually performed on high performance computers. In this paper, efficient hardware architectures of the LB method on a Zynq system‐on‐chip (SoC) are designed and implemented. The proposed architectures have first been simulated in Vivado HLS environment and later implemented on a ZedBoard using the software‐defined SoC (SDSoC) development environment. In addition, a set of evaluations of different hardware architectures of the LB implementation is discussed in this paper. The experimental results show that the proposed implementation is able to accelerate the processing speed by a factor of 52 compared to a dual‐core ARM processor‐based software implementation

    Study of fluid displacement in 3D porous media with an improved multi-component pseudopotential lattice Boltzmann method

    Full text link
    We generalize to three dimensions (3D) a recently developed improved multi-component pseudopotential lattice Boltzmann method and analyze its applicability to simulate flows through realistic porous media. The model is validated and characterized via benchmarks, and we investigate its performance by simulating the displacement of immiscible fluids in 3D geometries. Two samples are considered, namely, a pack of spheres obtained numerically, and a Bentheimer sandstone rock sample obtained experimentally. We show that, with this model it is possible to simulate realistic viscosity ratios, to tune surface tension independently and, most importantly, to preserve the volume of trapped fluid. We also evaluate the computational performance of the model on the Graphical Processing Unit (GPU) and mention the implemented optimizations to increase the computational speed and reduce the memory requirements.Comment: arXiv admin note: text overlap with arXiv:2111.0866

    A Python implementation in graphic processing unit of a lattice Boltzmann model for unstable three-dimensional flows in immersed permeable media

    Get PDF
    The implementation of a lattice Boltzmann model for three-dimensional permeable media with localized drag forces is presented. The model was previously introduced for two-dimensional geometries and follows the basics of the immersed boundary method. Permeable flows are much less stable than their counterparts in porous media and generally produce large coherent flow structures, such as vortex lines, rolls, and wakes. In addition, in permeable media, the small-scale geometry often needs to be represented to a high degree of detail in order to capture certain transport phenomena, such as micro-convection or pollination. Hence, both calculation speed and memory requirements are under strain. The present model was implemented in a graphic processing unit showing excellent performance in the calculation of stable and unstable flows in a rectangular channel partially obstructed by an array of parallel wires. In particular, the model is able to deal with small and medium spatial scales without losing the heterogeneous nature of permeable flows in the homogenization process. The algorithm to manage memory issues is described in detail, and the results of the test case for stable and unstable conditions show the capability of the method to simulate these types of flows.Fil: Boroni, Gustavo Adolfo. Universidad Nacional del Centro de la Provincia de Buenos Aires. Facultad de Ciencias Sociales; Argentina. Consejo Nacional de Investigaciones Científicas y Técnicas; ArgentinaFil: Silin, Nicolas. Comisión Nacional de Energía Atómica. Gerencia del Área de Energía Nuclear. Instituto Balseiro; Argentina. Consejo Nacional de Investigaciones Científicas y Técnicas; ArgentinaFil: Clausse, Alejandro. Consejo Nacional de Investigaciones Científicas y Técnicas; Argentina. Comisión Nacional de Energía Atómica; Argentin

    Performance Optimization of 3D Lattice Boltzmann Flow Solver on a GPU

    No full text
    Lattice Boltzmann Method (LBM) is a powerful numerical simulation method of the fluid flow. With its data parallel nature, it is a promising candidate for a parallel implementation on a GPU. The LBM, however, is heavily data intensive and memory bound. In particular, moving the data to the adjacent cells in the streaming computation phase incurs a lot of uncoalesced accesses on the GPU which affects the overall performance. Furthermore, the main computation kernels of the LBM use a large number of registers per thread which limits the thread parallelism available at the run time due to the fixed number of registers on the GPU. In this paper, we develop high performance parallelization of the LBM on a GPU by minimizing the overheads associated with the uncoalesced memory accesses while improving the cache locality using the tiling optimization with the data layout change. Furthermore, we aggressively reduce the register uses for the LBM kernels in order to increase the run-time thread parallelism. Experimental results on the Nvidia Tesla K20 GPU show that our approach delivers impressive throughput performance: 1210.63 Million Lattice Updates Per Second (MLUPS)
    corecore