Publication 2024
XLB
A Differentiable Massively Parallel Lattice Boltzmann Library in Python
Abstract
XLB: A Differentiable Massively Parallel Lattice Boltzmann Library in Python
Mohammadmehdi Ataei, Hesam Salehipour
The lattice Boltzmann method (LBM) has emerged as a prominent technique for solving fluid dynamics problems due to its algorithmic potential for computational scalability. We introduce XLB library, a Python-based differentiable LBM library based on the JAX platform. The architecture of XLB is predicated upon ensuring accessibility, extensibility, and computational performance, enabling scaling effectively across CPU, TPU, multi-GPU, and distributed multi-GPU or TPU systems. The library can be readily augmented with novel boundary conditions, collision models, or multi-physics simulation capabilities. XLB’s differentiability and data structure is compatible with the extensive JAX-based machine learning ecosystem, enabling it to address physics-based machine learning, optimization, and inverse problems. XLB has been successfully scaled to handle simulations with billions of cells, achieving giga-scale lattice updates per second.
XLB is released under the permissive Apache-2.0 license and is available on GitHub.
Download publicationRelated Resources
2019
Occupancy Visualization towards Activity RecognitionWe present a sensor visualization system that integrates data streams…
2020
Learning to Simulate and Design for Structural EngineeringThe structural design process for buildings is time consuming and…
Get in touch
Something pique your interest? Get in touch if you’d like to learn more about Autodesk Research, our projects, people, and potential collaboration opportunities.
Contact us