blob: d3141f900d388acd975b7f04b2fbd08e3ed72164 [file] [log] [blame]
Mesos MPICH2 framework readme
--------------------------------------------
Table of Contents:
1) Installing MPICH2
2) Running the Mesos MPICH2 framework
=====================
1) INSTALLING MPICH2:
=====================
- This framework was developed for MPICH2 1.2(mpd was deprecated
starting 1.3) on Linux(Ubuntu 11.10) and OS X Lion.
- You can install MPICH2 from scratch. You can get MPICH2 as well as
installation directions here:
http://www.mcs.anl.gov/research/projects/mpich2/. This tutorial
follows the latter. Unpack the tar.gz and...
- To use MPI with Mesos, make sure to have MPICH2 installed on every
machine in your cluster.
Setting up:
-> Install and configure:
mac : ./configure --prefix=/Users/_your_username_/mpich2-install
ubuntu : ./configure --prefix=/home/_your_username_/mpich2-install
Then...
sudo make
sudo make install
-> Optional: add mpich binaries to PATH. You can specify the path to
installed MPICH2 binaries using mpiexec-meso's '--path' option
mac : sudo vim ~/.bash_profile
export PATH=/Users/_your_username_/mpich2-install/bin:$PATH
ubuntu : sudo vim ~/.bashrc
export PATH=/home/_your_username_/mpich2-install/bin:$PATH
-> Create .mpd conf file in home directory:
echo "secretword=nil" > ~/.mpd.conf
chmod 600 .mpd.conf
-> Check installation - these should all return the PATH's set above
which mpd
which mpiexec
which mpirun
=====================================
2) RUNNING THE MESOS MPICH2 FRAMEWORK
=====================================
Using/testing mpiexec-mesos:
-> Start a Mesos master and slaves
-> How to run a Hello, World! program (pass the -h flag to see help options):
mpicc helloworld.c -helloworld
./mpiexec-mesos 127.0.0.1:5050 ./helloworld
Paths to mesos, protobuf, and distribute eggs can be specified by setting
respective environment variables in mpiexec-mesos.