Related Experiment Video
Updated: Nov 7, 2025

Multiscale Sampling of a Heterogeneous Water/Metal Catalyst Interface using Density Functional Theory and Force-Field Molecular Dynamics
Published on: April 12, 2019
Cross-platform programming model for many-core lattice Boltzmann simulations
Jonas Latt1, Christophe Coreixas1, Joël Beny1
1Computer Science Department, University of Geneva, Carouge, Switzerland.
Abstract:
We present a novel, hardware-agnostic implementation strategy for lattice Boltzmann (LB) simulations, which yields massive performance on homogeneous and heterogeneous many-core platforms. Based solely on C++17 Parallel Algorithms, our approach does not rely on any language extensions, external libraries, vendor-specific code annotations, or pre-compilation steps. Thanks in particular to a recently proposed GPU back-end to C++17 Parallel Algorithms, it is shown that a single code can compile and reach state-of-the-art performance on both many-core CPU and GPU environments for the solution of a given non trivial fluid dynamics problem. The proposed strategy is tested with six different, commonly used implementation schemes to test the performance impact of memory access patterns on different platforms. Nine different LB collision models are included in the tests and exhibit good performance, demonstrating the versatility of our parallel approach. This work shows that it is less than ever necessary to draw a distinction between research and production software, as a concise and generic LB implementation yields performances comparable to those achievable in a hardware specific programming language. The results also highlight the gains of performance achieved by modern many-core CPUs and their apparent capability to narrow the gap with the traditionally massively faster GPU platforms. All code is made available to the community in form of the open-source project stlbm, which serves both as a stand-alone simulation software and as a collection of reusable patterns for the acceleration of pre-existing LB codes.
More Related Videos
05:37Rapid in-silico Battery Electrolyte Electrochemical Reaction Generation using 3T-VASP Multi-Scale Energy Minimization
Published on: August 22, 2025
07:31Author Spotlight: Advancing Cell Membrane Biophysics - Exploring Interactions and Challenges Through Experimental and Computational Approaches
Published on: September 1, 2023
Related Concept Videos
Parallel Processing
Maxwell-Boltzmann Distribution: Problem Solving
This distribution function f(v) is defined by saying that the expected number N (v1,v2) of particles with speeds between v1 and v2 is given by
Lattice Centering and Coordination Number
Types of Unit Cells
Imagine taking a large number of identical...
Mechanistic Models: Compartment Models in Algorithms for Numerical Problem Solving
In individual population analyses, different algorithms are employed, such as Cauchy's method, which uses a...
Fermi Level Dynamics
Electron affinity in semiconductors refers to the energy gap between the minimum of its conduction band and the vacuum level and it is a critical parameter in determining how easily a semiconductor can accept additional electrons.
The work...
Multimachine Stability
In analyzing the system, the nodal equations represent the relationship between bus voltages, machine voltages, and machine currents. The nodal equation is given by: