Difference between revisions of "MPICH2"
Weibullguy (talk | contribs) |
Weibullguy (talk | contribs) |
||
Line 166: | Line 166: | ||
|} | |} | ||
+ | [[Category:Programming]] | ||
[[Category:Clusters_Grids]] | [[Category:Clusters_Grids]] |
Latest revision as of 08:54, 19 October 2010
Download Source: | http://www.mcs.anl.gov/research/projects/mpich2/downloads/tarballs/1.0.6p1/mpich2-1.0.6p1.tar.gz |
---|
Contents
Introduction to MPICH2
MPICH2 is an implementation of the Message-Passing Interface (MPI) version 2.
Project Homepage: http://www-unix.mcs.anl.gov/mpi/mpich/
Dependencies
Required
Configuration Information
--with-pm=<PROCESS MANAGER>: Determines which process manager(s) are built where <PROCESS MANAGER> is a colon-separated list of mpd, smpd, or gforker. See the documentation for a discussion of each process manager. |
--with-device=<SOCKET>: Selects sockets for interprocess communications where <SOCKET> is one of ch3:sock, ch3:ssm, ch3:shm, or ch3:nemesis. See the documentation for a discussion of each socket type. |
Non-Multilib
Compile the package:
./configure --prefix=/usr --sysconfdir=/etc/mpich2 \ --enable-sharedlibs=gcc --with-pm=mpd:gforker --enable-f90 \ --enable-cxx --with-mpe --with-device=ch3:sock \ --with-htmldir=/usr/share/doc/mpich2/html --mandir=/usr/share/man && make
Install the package:
make install make install-examples mv -v /usr/lib/mpich2-ch3.pc /usr/lib/pkgconfig
Multilib
32Bit
Compile the package:
CC="gcc ${BUILD32}" CXX="g++ ${BUILD32}" ./configure --prefix=/usr --sysconfdir=/etc/mpich2 \ --enable-sharedlibs=gcc --with-pm=mpd:gforker --enable-f90 \ --enable-cxx --with-mpe --with-device=ch3:sock \ ---with-htmldir=/usr/share/doc/mpich2/html --mandir=/usr/share/man && make
Install the package:
make install make install-examples mv -v /usr/lib/mpich2-ch3.pc /usr/lib/pkgconfig
N32
Compile the package:
CC="gcc ${BUILDN32}" CXX="g++ ${BUILDN32}" ./configure --prefix=/usr --libdir=/usr/lib32 \ --sysconfdir=/etc/mpich2 --enable-sharedlibs=gcc --with-pm=mpd:gforker \ --enable-f90 --enable-cxx --with-mpe --with-device=ch3:sock \ ---with-htmldir=/usr/share/doc/mpich2/html --mandir=/usr/share/man && make
Install the package:
make install make install-examples mv -v /usr/lib32/mpich2-ch3.pc /usr/lib32/pkgconfig
64Bit
Compile the package:
CC="gcc ${BUILD64}" CXX="g++ ${BUILD64}" ./configure --prefix=/usr --libdir=/usr/lib64 \ --sysconfdir=/etc/mpich2 --enable-sharedlibs=gcc --with-pm=mpd:gforker \ --enable-f90 --enable-cxx --with-mpe --with-device=ch3:sock \ ---with-htmldir=/usr/share/doc/mpich2/html --mandir=/usr/share/man && make
Install the package:
make install make install-examples mv -v /usr/lib64/mpich2-ch3.pc /usr/lib64/pkgconfig
Configuring
The process manager requires a secret word to execute. Don't use your login password!! You can change the secret word below to something you like better.
Process Manager
Set the secret word system-wide (required to run process managers as root):
echo MPD_SECRETWORD=weibullguyiscool > /etc/mpd.conf chmod 600 /etc/mpd.conf
Set the secret word for an unprivileged user.
echo MPD_SECRETWORD=weibullguyiscool > $HOME/.mpd.conf chmod 600 $HOME/.mpd.conf
Bootscript
Install the mpd init script included in the bootscripts package.
make install-mpich2
Test Suite
Now that MPICH2 is installed, start the process manager and run the test suite. The results are output to an XML file that can be viewed in your web browser. MPICH2 comes with a stylesheet for rendering the XML test results.
mpd & make testing mkdir ../mpich2_test_results cp -v test/TestResults.xsl ../mpich2_test_results cp -v test/mpi/summary.xml ../mpich2_test_results firefox ../mpich2_test_results/summary.xml
Contents
Installed Directories: | None |
---|---|
Installed Programs: | mpd, mpdboot, mpdallexit, mpiexec, mpirun, mpicc, mpicxx, mpif90 |
Installed Libraries: | libmpich.{a,so}, libmpichcxx.{a,so}, libmpichf90.{a,so}, libmpe.a |
Short Descriptions
mpd | |
---|---|
mpdboot | |
mpdallext | |
mpiexec | |
mpirun | |
mpicc | |
mpicxx | |
mpif90 |