Install MPI on a MacBook

From dftwiki3
Revision as of 12:22, 7 October 2013 by Thiebaut (talk | contribs) (Compile and Run)
Jump to: navigation, search

--D. Thiebaut (talk) 12:43, 7 October 2013 (EDT)


Download

Extract and Install

  • Assume that the downloaded file is in your ~/Downloads directory
  • Just follow the directions in the INSTALL file, which are summarized below. The installation was done on *my* machine, and assumes the user is thiebaut. Change and plug-in your own user name.
  • open a Terminal window, and type the following commands in it:
cd
mkdir mpi
mkdir mpi/download
cd mpi/download
mv ../Downloads/openmpi-1.6.5.tar.gz .
tar -xzvf openmpi-1.6.5.tar.gz 
cd openmpi-1.6.5
./configure --prefix=/Users/thiebaut/mpi/    (replace thiebaut by your user name on your Mac)
 

The last command will take 10 minutes or so. When it is done, make all and install

make all install

This last command takes a while as well...

Update your path

  • edit the .bash_profile file in your main account directory.
  • locate the line that reads PATH=...
  • right below this line, add the new line
     PATH=$PATH:/Users/thiebaut/mpi/bin/       
  • and make sure your replace thiebaut by your account name!
  • source your .bash_profile so that the new path is learnt by your system
 cd
 source .bash_profile
  • You are done!

Testing

Create this file in the directory of your choice, and call it helloWorld.c:

/* C Example */
#include <stdio.h>
#include <mpi.h>


int main (argc, argv)
     int argc;
     char *argv[];
{
  int rank, size;

  MPI_Init (&argc, &argv);	/* starts MPI */
  MPI_Comm_rank (MPI_COMM_WORLD, &rank);	/* get current process id */
  MPI_Comm_size (MPI_COMM_WORLD, &size);	/* get number of processes */
  printf( "Hello world from process %d of %d\n", rank, size );
  MPI_Finalize();
  return 0;
}


Compile and Run

mpicc -o hello helloWorld.c
mpirun -np 2 ./hello
Hello world from process 0 of 2
Hello world from process 1 of 2
  • If you see the two lines starting with "Hello world" on your screen, MPI was successfully installed on your system!