TL;DR
This paper presents a suite of lattice Boltzmann kernels designed as a testbed for performance analysis and optimization on modern hardware, providing a reference for benchmarking and improving CFD solver implementations.
Contribution
It introduces a set of diverse LBM kernels with verification methods, establishing a performance model and comparing implementations across recent architectures.
Findings
Kernels serve as benchmarks for performance evaluation.
Performance varies across hardware architectures.
The suite aids in optimization and comparison of LBM implementations.
Abstract
Lattice Boltzmann methods (LBM) are an important part of current computational fluid dynamics (CFD). They allow easy implementations and boundary handling. However, competitive time to solution not only depends on the choice of a reasonable method, but also on an efficient implementation on modern hardware. Hence, performance optimization has a long history in the lattice Boltzmann community. A variety of options exists regarding the implementation with direct impact on the solver performance. Experimenting and evaluating each option often is hard as the kernel itself is typically embedded in a larger code base. With our suite of lattice Boltzmann kernels we provide the infrastructure for such endeavors. Already included are several kernels ranging from simple to fully optimized implementations. Although these kernels are not fully functional CFD solvers, they are equipped with a solid…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
