arrow
Return

lbmpy: Automatic code generation for efficient parallel lattice Boltzmann methods

delete2021-02-01
delete32
delete
OA
AI
M
Martin Bauer *
H
Harald Koestler
U
Ulrich Ruede
DOI:10.1016/j.jocs.2020.101269delete
deleteOriginal
deleteShare
deleteSave
View PDF
Abstract

Abstract

En 中文
Lattice Boltzmann methods are a popular mesoscopic alternative to classical computational fluid dynamics based on the macroscopic equations of continuum mechanics. Many variants of lattice Boltzmann methods have been developed that vary in complexity, accuracy, and computational cost. Extensions are available to simulate multi phase, multi-component, turbulent, and non-Newtonian flows. In this work we present lbmpy, a code generation package that supports a wide variety of different lattice Boltzmann methods. Additionally, lbmpy provides a generic development environment for new schemes. A high-level domain-specific language allows the user to formulate, extend and test various lattice Boltzmann methods. In all cases, the lattice Boltzmann method can be specified in symbolic form. Transformations that operate on this symbolic representation yield highly efficient compute kernels. This is achieved by automatically parallelizing the methods, and by various application-specific automatized steps that optimize the resulting code. This pipeline of transformations can be applied to a wide range of lattice Boltzmann variants, including singleand two-relaxation-time schemes, multi-relaxation-time methods, as well as the more advanced cumulant methods, and entropically stabilized methods. lbmpy can be integrated into high-performance computing frameworks to enable massively parallel, distributed simulations. This is demonstrated using the WALBERLA multiphysics package to conduct scaling experiments on the SuperMUCNG supercomputing system on up to 147 456 compute cores.
Keywords:
Meta programming
LBM
hpc
AI Summary

AI Summary

Key information extracted from the uploaded paper, including a brief overview, abstract, background, key highlights, visual analysis, and future outlook.

Journal

Nature Computational Science cover
Nature Computational Science
IF:
18.3
Papers:
3.1K
Citations:
4.0K

Organization

U
University of Erlangen Nuremberg
Scholars:
3.2W
Papers: 2.6W
Citations: 29