A small research project for OpenMPI and MPICH bindings written in pure Ada.
- Add more data types and their handles
- More useful functions like gather and scatter
alr with --use=https://github.com/codendonut/mpiadaModify your alire.toml
[configuration.values]
mpiada.MPI_Vendor = "openmpi"or
[configuration.values]
mpiada.MPI_Vendor = "mpich"Add the following to your GPR file (or something similar):
package Linker is
for Required_Switches use external_as_list ("MPI_LINKER_FLAGS", " ");
end Linker;run the following using the environment variable defined earlier:
export MPI_LINKER_FLAGS="$(pkgconf --libs mpich)"
alr clean && alr buildrun the following using the environment variable defined earlier:
export MPI_LINKER_FLAGS="$(pkgconf --libs ompi-c)"
alr clean && alr buildSee tests/src/tests.adb for an example
There is a bug in MPICH in Ubuntu-24 that requires it to be launched via mpirun.openmpi instead of the one packaged with mpich.