Intel® MPI Library Developer Guide for Linux* OS

ID 768728
Date 12/16/2022
Public

A newer version of this document is available. Customers should click here to go to the newest version.

Document Table of Contents

Compiling an MPI Program

This topic describes the basic steps required to compile and link an MPI program, using the Intel® MPI Library SDK.

To simplify linking with MPI library files, Intel MPI Library provides a set of compiler wrapper scripts with the mpi prefix for all supported compilers. To compile and link an MPI program, do the following:

  1. Make sure you have a compiler in your PATH environment variable. For example, to check if you have the Intel® C Compiler, enter the command:

    $ which icc

    If the command is not found, add the full path to your compiler into the PATH. For Intel® compilers, you can source the script setvars.sh to set the required environment variables.

  2. Source the setvars.sh script in the installation directory to set the proper environment variables for the Intel MPI Library  (the default installation directory location is /opt/intel/oneapi/mpi/<version>

  3. Compile your MPI program using the appropriate compiler wrapper script. For example, to compile a C program with the Intel® C Compiler, use the mpiicc script as follows:

    $ mpiicc myprog.c -o myprog

You will get an executable file myprog in the current directory, which you can start immediately. For instructions of how to launch MPI applications, see Running an MPI Program.

NOTE:
By default, the resulting executable file is linked with the multi-threaded optimized library. If you need to use another library configuration, see Selecting Library Configuration.

For details on the available compiler wrapper scripts, see the Developer Reference.

Compiling an MPI/OpenMP* Program

To compile a hybrid MPI/OpenMP* program using the Intel® compiler, use the -qopenmp option. For example:

$ mpiicc -qopenmp test.c -o testc

This enables the underlying compiler to generate multi-threaded code based on the OpenMP* pragmas in the source. For details on running such programs, refer to Running an MPI/OpenMP* Program.

Adding Debug Information

If you need to debug your application, add the -g option to the compilation command line. For example:

$ mpiicc -g test.c -o testc

This adds debug information to the resulting binary, enabling you to debug your application. Debug information is also used by analysis tools like Intel® Trace Analyzer and Collector to map the resulting trace file to the source code.

Test MPI Programs

The Intel® MPI Library comes with a set of source files for simple MPI programs that enable you to test your installation. Test program sources are available for all supported programming languages and are located in the test directory in your installation directory.