Having some issues with multinode openmpi clusters at the moment, but mpich2 seems to work. Source install instructions below, or install from deb downloads:
sudo dpkg -i package.deb
packages here: http://www.mcs.anl.gov/research/projects/mpich2/downloads/index.php?s=downloads
###### MPICH2 specific: As Elasticwulf user on master node ##############
# compile mpich2 as elasticwulf user, this takes a while - will probably want to bundle into base AMI
mkdir mpich2
wget http://www.mcs.anl.gov/research/projects/mpich2/downloads/tarballs/1.1rc1/mpich2-1.1rc1.tar.gz
tar xvf mpich2-1.1rc1.tar.gz
cd mpich2-1.1rc1
./configure --prefix=/mnt/elasticwulf/mpich2
make
sudo make install
# add the following to /mnt/elasticwulf/.bashrc
# this forces default MPI commands to MPICH2
echo 'export PATH=/mnt/elasticwulf/mpich2/bin:$PATH
export PATH
LD_LIBRARY_PATH="/mnt/elasticwulf/mpich2/lib:$LD_LIBRARY_PATH"
export LD_LIBRARY_PATH' >> /mnt/elasticwulf/.bashrc
# TODO how do we ensure these get set?
# set up MPD
# Create mpd.hosts in elasticwulf's home directory with nodes names:
# use the machinefile format...
echo secretword=something >> ~/.mpd.conf
wget http://localhost:3000/jobs/9/mpich2_machinefile
mv mpich2_machinefile mpd.hosts
# boot the cluster...
mpdboot -n 3
mpdtrace
#domU-12-31-39-03-74-35
#domU-12-31-39-03-75-C3
#domU-12-31-39-03-35-E3
mpicc hello.c
mpiexec -n 3 /home/elasticwulf/hello
#Hello world[0]
#Hello world[1]
#Hello world[2]
mpiexec -n 3 hostname
#domU-12-31-39-03-74-35
#domU-12-31-39-03-75-C3
#domU-12-31-39-03-35-E3
Having some issues with multinode openmpi clusters at the moment, but mpich2 seems to work. Source install instructions below, or install from deb downloads:
sudo dpkg -i package.deb
packages here: http://www.mcs.anl.gov/research/projects/mpich2/downloads/index.php?s=downloads