Download and unpack the application source code:
tar ‑zxvf mvapich2‑2.3.1.tar.gz
Change into the unpacked directory:
Set an install location,
INSTALL_DIR, where MVAPICH will be installed to. For example:
/path/to/MVAPICH_installwith the path to your installation.
Set the compilers to use for the build:
export CC=armclang export CXX=armclang++ export FC=armflang
builddirectory and change into it:
mkdir build cd build
builddirectory, specifying the devices and protocols to build for, and the language interfaces to include:
Note: The default on Linux is OpenFabrics (OFA) IB/iWARP/RoCE with the CH3 channel. Explicitly select it with:
../configure --prefix=$INSTALL_DIR --with-device=ch3:mrail --with-rdma=gen2 --enable-cxx --enable-fc
Note: For more configuration options, see the MVAPICH user guide.
Build, test, and install MVAPICH, using:
make -j make install make testing
By default, MVAPICH enables CPU affinity. However, in the case of multi‑threaded programs, this can lead to poor thread placement and poor performance. It is recommended to disable CPU affinity in this case:
You must also disable CPU affinity if you want to over-subscribe the available cores with MPI tasks, for testing and development purposes.
MVAPICH supports the explicit control of the CPU and thread placement and binding policy via
mpirunprovides details on the mapping between CPUs and processes if
For more information, see the MVAPICH User Guide.