Repolode
ProjectPhysX

ProjectPhysX/FluidX3D

Lattice Boltzmann CFD solver that runs fluid simulations on GPUs and CPUs through OpenCL, with real-time rendering and multi-GPU support.

Stars
5,358
Forks
480
Open issues
53
Last commit
9 days ago

What is it?

FluidX3D is a computational fluid dynamics (CFD) solver built on the lattice Boltzmann method (LBM), a approach that simulates fluid flow by tracking particle distribution functions on a grid. It is written in C++ and runs on any device with an OpenCL driver, including AMD, Intel and Nvidia GPUs as well as CPUs. The project focuses on keeping VRAM usage low, storing distribution functions in compressed FP16 formats and using in-place streaming, so that larger grids fit on a given card.

Beyond the solver itself, FluidX3D includes an interactive graphics mode on Windows and Linux with raytraced fluid rendering, slice views, and isosurface visualization, as well as export to VTK files. It supports STL geometry loading, solid and moving boundaries, free surfaces, a temperature extension, and immersed-boundary particles. Multi-GPU domain decomposition works across vendors within a single computer or server.

The project is free for non-commercial use, and the license terms page explains the commercial restrictions. Its documentation covers setup, GPU driver installation and sample setups such as Ahmed body and Cessna 172 simulations.

Key features

  • 01Runs on AMD, Intel and Nvidia GPUs and CPUs through OpenCL.
  • 02Reduces VRAM use with FP16 compressed distribution functions and in-place streaming.
  • 03Supports multi-GPU simulation across different vendors on one machine.
  • 04Loads STL geometry and handles stationary and moving solid boundaries.
  • 05Provides interactive raytraced visualization and VTK export.

Use cases

  • Simulating airflow or drag around vehicles and other bodies.
  • Running large-grid fluid experiments on consumer GPUs with limited VRAM.
  • Visualizing free-surface flows such as hydraulic jumps or raindrops.

Things to know

  • Free for non-commercial use only, so commercial use requires a different license.
  • The license metadata could not be automatically identified, so the exact terms should be checked in the repository.

Topics

#cfd#lattice-boltzmann#opencl#gpu-computing#fluid-simulation#scientific-computing#high-performance-computing#benchmark#computational-fluid-dynamics#fluid-dynamics

FAQ

What is FluidX3D?
Lattice Boltzmann CFD solver that runs fluid simulations on GPUs and CPUs through OpenCL, with real-time rendering and multi-GPU support. FluidX3D is a computational fluid dynamics (CFD) solver built on the lattice Boltzmann method (LBM), a approach that simulates fluid flow by tracking particle distribution functions on a grid. It is written in C++ and runs on any device with an OpenCL driver, including AMD, Intel and Nvidia GPUs as well as CPUs. The project focuses on keeping VRAM usage low, storing distribution functions in compressed FP16 formats and using in-place streaming, so that larger grids fit on a given card.
Is FluidX3D free to use? What license does it have?
FluidX3D is open source under the Other license. Check the license terms before using it in commercial products.
Is FluidX3D still maintained?
Actively maintained. The last commit to FluidX3D was on Oct 29, 2026.
What can I use FluidX3D for?
Simulating airflow or drag around vehicles and other bodies. Running large-grid fluid experiments on consumer GPUs with limited VRAM. Visualizing free-surface flows such as hydraulic jumps or raindrops.
Where can I get FluidX3D?
The source code and installation instructions are on GitHub: https://github.com/ProjectPhysX/FluidX3D

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects