MPI interface for the Julia language

Docs latest Docs stable Unit Tests GPU tests codecov.io Coverage Status

This provides Julia interface to the Message Passing Interface (MPI), roughly inspired by mpi4py.

Please see the documentation for instructions on configuration and usage.

Breaking changes with v0.20: The way how MPI.jl is configured to use different MPI implementations has changed from v0.19 to v0.20 in a non-backward-compatible manner. Specifically, most JULIA_MPI_XXX variables do not have an effect anymore. Please refer to the docs for information on how to migrate your existing configuration.

Help and discussion

For help and discussion, we suggest asking on the following venues:

Contributing

Contributions are encouraged. In particular, MPI provides several hundred functions, only a small number of which are currently exposed. If there are additional functions you would like to use, please open an issue or pull request.

Additional examples and documentation improvements are also very welcome.

Citation

If you use MPI.jl in your work, please cite the following paper:

Simon Byrne, Lucas C. Wilcox, and Valentin Churavy (2021) "MPI.jl: Julia bindings for the Message Passing Interface". JuliaCon Proceedings, 1(1), 68, doi: 10.21105/jcon.00068