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
2024
PlotMap: Automated Layout Design for Building Game WorldsThis research presents novel AI methods for mapping stories to maps in…
2021
Building-GAN: Graph-Conditioned Architectural Volumetric Design GenerationVolumetric design is the first and critical step for professional…
2022
Neon: A Multi-GPU Programming Model for Grid-based ComputationsWe present Neon, a new programming model for grid-based computation…
2022
SkexGen: Autoregressive Generation of CAD Construction Sequences with Disentangled CodebooksWe present SkexGen, a novel autoregressive generative model for…
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