HPC:MPI
From HPC wiki
MPI
MPI based applications can take advantage of either the mpich2 or openmpi installations available on all cluster nodes.
mpich2 Usage
mpich2 is available as module:
[asrini@node063 ~]$ module load mpich2-x86_64 [asrini@node063 ~]$ which mpich2version /usr/lib64/mpich2/bin/mpich2version [asrini@node063 ~]$ mpich2version MPICH2 Version: 1.2.1 MPICH2 Release date: Unknown, built on Thu Aug 5 15:27:11 EDT 2010 MPICH2 Device: ch3:nemesis MPICH2 configure: --build=x86_64-redhat-linux-gnu --host=x86_64-redhat-linux-gnu --target=x86_64-redhat-linux-gnu --program-prefix= --prefix=/usr --exec-prefix=/usr --bindir=/usr/bin --sbindir=/usr/sbin --sysconfdir=/etc --datadir=/usr/share --includedir=/usr/include --libdir=/usr/lib64 --libexecdir=/usr/libexec --localstatedir=/var --sharedstatedir=/var/lib --mandir=/usr/share/man --infodir=/usr/share/info --enable-sharedlibs=gcc --enable-f90 --with-device=ch3:nemesis --sysconfdir=/etc/mpich2-x86_64 --includedir=/usr/include/mpich2-x86_64 --libdir=/usr/lib64/mpich2/lib --datadir=/usr/share/mpich2 --mandir=/usr/share/man/mpich2 --docdir=/usr/share/mpich2/doc --htmldir=/usr/share/mpich2/doc --with-java=/etc/alternatives/java_sdk F90=gfortran F77=gfortran CFLAGS=-m64 -O2 -fPIC CXXFLAGS=-m64 -O2 -fPIC F90FLAGS=-m64 -O2 -fPIC FFLAGS=-m64 -O2 -fPIC LDFLAGS=-Wl,-z,noexecstack MPICH2LIB_CFLAGS=-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic MPICH2LIB_CXXFLAGS=-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic MPICH2LIB_F90FLAGS=-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic MPICH2LIB_FFLAGS=-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic MPICH2 CC: gcc -m64 -O2 -fPIC -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -O2 MPICH2 CXX: c++ -m64 -O2 -fPIC -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -O2 MPICH2 F77: gfortran -m64 -O2 -fPIC -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -O2 MPICH2 F90: gfortran -m64 -O2 -fPIC -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -O2
OpenMPI usage
openmpi is also available as a module
[asrini@node063 ~]$ module load openmpi-1.5.4-x86_64 [asrini@node063 ~]$ mpirun --version mpirun (Open MPI) 1.5.4 Report bugs to http://www.open-mpi.org/community/help/ [asrini@node063 ~]$ mpicc --version gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-3) Copyright (C) 2010 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. [asrini@node063 ~]$ which mpicc /usr/lib64/openmpi/bin/mpicc