Intel® MPI Library is a multi-fabric message passing library that implements the Message Passing Interface, version 3.1 (MPI-3.1) specification. Use the library to develop applications that can run on multiple cluster interconnects.

Intel® MPI Library has the following features:

Intel® MPI Library is available as a standalone product and as part of the Intel® Parallel Studio XE Cluster Edition.

Product Contents

The product comprises the following main components:

Besides the SDK and RTO components, Intel® MPI Library also includes Intel® MPI Benchmarks, which enable you to measure MPI operations on various cluster architectures and MPI implementations. For details, see the Intel® MPI Benchmarks User Guide at <installdir>/compilers_and_libraries_<version>/linux/mpi/benchmarks/imb/doc.

Prerequisites

Before you start using Intel® MPI Library make sure to complete the following steps:

  1. Source the mpivars.[c]sh script to establish the proper environment settings for the Intel® MPI Library. It is located in the <installdir>/<arch>/bin directory, where <installdir> refers to the Intel MPI Library installation directory (for example, /opt/intel/compilers_and_libraries_<version>.<update>.<package>/linux/mpi) and <arch> is one of the following:
    • intel64 - Intel® 64 architecture
    • mic - Intel® Many Integrated Core Architecture
  2. Create a hostfile text file that lists the nodes in the cluster using one host name per line. For example:
    clusternode1
    clusternode2
  3. Make sure the passwordless SSH connection is established among all nodes of the cluster. It ensures the proper communication of MPI processes among the nodes. To establish the connection, you can use the sshconnectivity.exp script located at <installdir>/parallel_studio_xe_<version>.<update>.<package>/bin.

After completing these steps, you are ready to use Intel® MPI Library.

For detailed system requirements, see the System Requirements section in Release Notes.

Building and Running MPI Programs

Compiling an MPI program

If you have the SDK component installed, you can build your MPI programs with Intel® MPI Library. Do the following:

  1. Make sure you have a compiler in your PATH. To check this, run the which command on the desired compiler. For example:
  2. $ which icc
    /opt/intel/compilers_and_libraries_<version>.<update>.<package>/linux/bin/intel64/icc
  3. Compile a test program using the appropriate compiler driver. For example:
  4. $ mpiicc -o myprog <installdir>/test/test.c

Running an MPI program

Use the previously created hostfile and run your program with the mpirun command as follows:

$ mpirun -n <# of processes> -ppn <# of processes per node> -f ./hostfile ./myprog

The test program above produces output in the following format:

Hello world: rank 0 of 2 running on clusternode1
Hello world: rank 1 of 2 running on clusternode2

This output indicates that you properly configured your environment and Intel® MPI Library successfully ran the test MPI program on the cluster.

Key Features

Intel® MPI Library has the following major features:

Troubleshooting

If you encounter problems when using Intel® MPI Library, go through the following general procedures to troubleshoot them:

See more details in the Troubleshooting section of the Developer Guide.

Training and Documentation

Document Description
Online Training

The online training site is an excellent resource for learning the Intel® MPI Library capabilities through various guides, videos, webinars, and more.

Readme

The Readme document contains a brief overview of the product, directory map for key product components, and pointers to other sources of information.

Release Notes

The Release Notes document contains the most up-to-date information about the product, including:

  • Overview
  • What's New
  • Key Features
  • System Requirements
  • Special Features and Known Limitations

Installation Guide

The Installation Guide contains information on obtaining, installing, and uninstalling Intel® MPI Library on Linux* OS.

Developer Guide (HTML) (PDF)

The Developer Guide gives detailed instructions on using the Intel® MPI Library functionality, describes the product features, and provides first-aid troubleshooting instructions.

Developer Reference (HTML) (PDF)

The Developer Reference describes the Intel® MPI Library commands, options, and environment variables.

Man Pages

The man pages contain information on MPI routines, their options, error returns and other common definitions and concepts.

The man pages are located at: <installdir_MPI>/man, where the default <installdir_MPI> is /opt/intel/compilers_and_libraries_<version>.<update>.<package>/linux/mpi.

Installed Resources Binaries folder: <installdir_MPI>/intel64/bin

The default directory for <installdir_MPI> is /opt/intel/compilers_and_libraries_<version>.<update>.<package>/linux/mpi.

Online Resources