SmartRedis-MPI
May 11, 2025 · View on GitHub
A communication library bridging parallel CFD solvers and Redis databases.
Overview
SmartRedis-MPI provides subroutines that facilitate communication between Computational Fluid Dynamics (CFD) solvers and Redis databases. Built on top of the SmartRedis library and Message Passing Interface (MPI), this library simplifies the process of storing and retrieving data from Redis databases in parallel computing environments.
Key Features
- Simplified Integration: Add just a few lines of code to enable communication between any parallel CFD solver and Redis database
- SmartRedis and MPI: Designed for high-performance parallel computing environments
- Production-Ready: Currently used in real-world applications while continuing to evolve
Applications
SmartRedis-MPI has been actively used by SmartFlow with CaLES as the CFD solver for deep reinforcement learning of turbulence modeling and flow control.
In general, its applications include:
- Deep reinforcement learning for turbulence modeling
- Deep reinforcement learning for flow control systems
- Other application of machine learning to computational fluid dynamics
Status
The library is functional and in active use. Development is ongoing to implement additional features and improve the code structure.
Installation
Coming soon
Usage Example
Coming soon
License
Coming soon
Contributors
SmartRedis-MPI is developed and maintained by a dedicated team of researchers and developers. We are grateful for the contributions of:
- Maochao Xiao (@soaringxmc) - Code implementation and library design
- Yuning Wang (@fantasy98) - Code implementation
- Bernat Font (@b-fg) - Library design
- Marius Kurz (@m-kurz) - Library design
Acknowledgements
SmartRedis-MPI has benefited from the expertise and support of many individuals in the computational fluid dynamics and high-performance computing communities.
Research Collaborators
We are grateful for the valuable discussions with:
- Francisco Alcántara Ávila
- Di Zhou
- Pol Suárez Morales
- Ting Zhu
Special thanks for the guidance and support provided by:
- Ricardo Vinuesa
- Johan Larsson
- Sergio Pirozzoli