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.
