A specification for interprocess communication defined by the MPI-Forum. ====== MPI ====== There are no test or default implementations to guarantee the compatibility of different MPI-implementations. The most common implementations are OpenMPI and MPICH, both incompatible to each other. Open MPI 1.2 supports all of MPI-2.0 Open MPI 1.3 supports all of MPI-2.1 Boost.MPI supports all of MPI-1.1 Provided Versions on WW8-Clients OpenMPI 1.6.4 (experimental) /usr/net/lib/openmpi-intel: Intel compiler (sandy bridge optimized) with MKL Usable after source /usr/net/bin/module_intel /usr/net/lib/openmpi-gnu ==== Supporting tools ==== [[tools:optimization | hwloc-ls]] Affinity Mask calculator ==== Fortran parameters ==== To get the paramters used py the MPI Fortran wrapers (mpif90) mpif90 --showme An example output of Fedora 23 with Openmpi (mpi/openmpi-x86_64) will result to: gfortran -I/usr/include/openmpi-x86_64 -pthread -I/usr/lib64/openmpi/lib -Wl,-rpath -Wl,/usr/lib64/openmpi/lib -Wl,--enable-new-dtags -L/usr/lib64/openmpi/lib -lmpi_usempif08 -lmpi_usempi_ignore_tkr -lmpi_mpifh -lmpi ==== Run job on multiple nodes ==== $(which mpirun) --hostfile [HOSTFILE] -np [NUMBER PROCESSORS] -x LD_LIBRARY_PATH -x PATH [EXECUTABLE]