Skip to content

sushant94/mpirs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

mpirs - An implementation of MPI in Rust

This is an implementation of the MPI standard in Rust. Unlike other projects that provide bindings to C (or other) implementations, mpirs is entirely self-contained and completely written in Rust. This comes with advantages of being able to use convenience and expressiveness of Rust. At the same time the library is not complete and as heavily tested as compared to more mature implementations.

NOTE: This project is still in its alpha version and does not support all functions mentioned in the MPI standard. However, it does provide the base and framework to implement these easily.

Usage Notes

Build you programs using the library mpirs. Once the binary is compiled, do not use cargo run in order to execute your programs. mpirs comes with a runner that takes care of setting and spawning processes (this is located in the bin/ directory). To run the program, use:

./target/debug/mpirun -n <num_procs> <path/to/rust/executable>

Alternatively, to make it easier to use, you could also set up a symlink to the mpirun.

ln -s $(PWD)/target/debug/mpirun /usr/bin/

Example:

./target/debug/mpirun -n 8 ./target/debug/token

Examples

Examples can be found in the examples/ directory

Building

mpirs can be built using a standard rust tool chain using cargo build.

License

mpirs is dual-licensed under:

Use under either one of the above listed licenses is acceptable.

About

mpirs - Implementation of MPI in Rust

Resources

License

Apache-2.0, Unknown licenses found

Licenses found

Apache-2.0
LICENSE-APACHE
Unknown
LICENSE-MIT

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors