welcome: please sign in
location: Diff for "Middleware/MpiStart/SiteConfiguration"
Differences between revisions 8 and 9
Revision 8 as of 2011-07-18 10:27:07
Size: 4639
Editor: enol
Revision 9 as of 2011-07-18 10:38:54
Size: 4639
Editor: enol
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
= MPI-Start for site administrators = = mpi-start for site administrators =
Line 58: Line 58:
== MPI-Start configuration == == mpi-start Configuration ==
Line 60: Line 60:
=== yaim configuration === === yaim Configuration ===

mpi-start for site administrators


Binary Distribution

Binary packages for mpi-start are generated in EMI using ETICS. Check EMI repositories for the correct package for your distribution. Once you have the repositories configured you only need to install the package using your favorite package manager:

For RedHat based distributions:

yum install mpi-start

Debian based:

apt-get install mpi-start

If you are running a gLite site, you may prefer to install the glite-mpi meta-package that includes the yaim plugin for configuraton. Information about this package is available at MPI-Utils

yum install glite-mpi

The nodes where the user applications will be executed (Worker Nodes) also require a working MPI implementation, Open MPI and MPICH are recommended. The devel packages should also be installed in order to allow user to compile their applications. Refer to your OS repositories for the exact packages. In the case of SL5, Open MPI (including devel packages) can be installed with the following command line:

yum install openmpi openmpi-devel

devel packages and compilers

Some devel packages of the MPI packages do not include the compiler as (e.g. gcc, gcc-gfortran, gcc-g++) dependency! They should be installed also if you want to support the compilation of MPI applications.

Source Distribution

Source can be retrieved from the mercurial repository.

Installation is as easy as "make install". The default installation prefix is "/usr", by default it also creates files in /etc/profile.d. If a non default installation wants to be done, use the PREFIX variable in make install

$ make install  PREFIX=/opt/mpi-start

In this case, is recommendable setting the installation the environment variable I2G_MPI_START to point to mpi-start script (although this is not mandatory anymore).

$ export I2G_MPI_START=/opt/mpi-start/bin/mpi-start

mpi-start Configuration

yaim Configuration

There is a yaim plugin available for configuring gLite sites, check the documentation at MPI-Utils page.

Manual Configuration

mpi-start is designed to auto detect most of the site configurations without any administrator intervention. The default installation will automatically detect:

  • the batch scheduler at the site: currently PBS/Torque, SGE, LSF, Condor and Slurm are supported.
  • existence of shared file system in the job running directory
  • availability of OSC mpiexec for PBS/Torque systems
  • default mpi installations for SLC5.

If the automatic detection fails for any of these, the administrator can set the following configuration variables:




name of the default flavour for jobs running at the site


Path of the bin and lib directories for the MPI flavour


preferred version of the MPI flavour


Path of the MPIEXEC binary for the specific flavour


Parameters for the MPIEXEC of the flavour


Path of the MPIRUN binary for the specific flavour


Parameters for the MPIRUN of the flavour


Path of the MPI installation for the MPI flavour

A known issue with the setting of the I2G_<flavour>_PREFIX variable makes them useless, please use the MPI_<flavour>_PATH variable instead!

If MPI_<flavour>_MPIEXEC or MPI_<flavour>_MPIRUN are not defined, mpi-start will try to use the mpiexec or mpirun that are found in the current PATH.


Hooks may change the behavior of mpi-start and provide additional features such as file distribution and configuration of compiler flags. Site admins can add their own hooks via the local hook mechanism.

mpi-start includes hooks for distributing the files needed for the execution of an application. By default it tries to find the most suitable method for copying the files, using shared filesystems whenever they are found. However, the filesystem detection may not work for all sites, or the shared filesystem may be in a different location to the execution path making it impossible for mpi-start to detect its availability. Check Hooks Framework for more information.

eciencia: Middleware/MpiStart/SiteConfiguration (last edited 2012-07-30 14:56:58 by enol)