Skip to content
This repository has been archived by the owner on May 30, 2023. It is now read-only.

Latest commit

 

History

History
 
 

mpi

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
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.
  WARNING: MPICH2 later than 1.2 may not run on Mesos.
  (You can configure newer version to include mpd,
   but then mpdtrace may still be missing and
   the executor script used for Mesos relies on it.)

- 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.