Is MPI code generation supported in MLIR?

Are there any supports for MPI code generation in MLIR? If not, what’s the current solution for MLIR to compile programs that can run on multiple CPUs with different memory spaces? And what may be the suitable dialects that can be used to implement the MPI code generation framework?

If you are talking about the Message Passing Interface. It is a library and needs a frontend: Fortran, C, or C++. There is a Flang in the repository. A Fortran compiler going through MLIR. There will be an MLIR-Clang:

To compile the library, you will need an C/C++ compiler.