Intel® MPI Library Reference Manual for Linux* OS
Print out debugging information when an MPI program starts running.
Syntax
I_MPI_DEBUG=<level>[,<flags>]
Arguments
<level> |
Indicate level of debug information provided |
0 |
Output no debugging information. This is the default value |
1 |
Output verbose error diagnostics |
2 |
|
3 |
Output effective MPI rank, pid and node mapping table |
4 |
Output process pinning information |
5 |
Output Intel MPI-specific environment variables |
> 5 |
Add extra levels of debug information |
<flags> |
Comma-separated list of debug flags |
pid |
Show process id for each debug message |
tid |
Show thread id for each debug message for multithreaded library |
time |
Show time for each debug message |
datetime |
Show time and date for each debug message |
host |
Show host name for each debug message |
level |
Show level for each debug message |
scope |
Show scope for each debug message |
line |
Show source line number for each debug message |
file |
Show source file name for each debug message |
nofunc |
Do not show routine name |
norank |
Do not show rank |
flock |
Synchronize debug output from different process or threads |
nobuf |
Do not use buffered I/O for debug output |
Description
Set this environment variable to control the output of the debugging information.
Note:
Set the same <level> value for all ranks.
You can specify the output file name for debug information by setting the I_MPI_DEBUG_OUTPUT environment variable.
Each printed line has the following format:
[<identifier>] <message>
where
<identifier> identifies the MPI process that produced the message. The <identifier> is an MPI process rank if <level> is an unsigned number. If the '+' sign is added in front of the <level> number, the <identifier> contains a rank#pid@hostname tuple. Here, rank is the MPI process rank; pid is the UNIX process id; and hostname is the host name as defined at process launch time.
<message> contains the debugging output.
For example, the following command:
$ mpiexec -n 1 -env I_MPI_DEBUG 2 ./a.out
may produce the following output:
[0] MPI startup(): shared memory data transfer mode
while the command
$ mpiexec -n 1 -env I_MPI_DEBUG +2 ./a.out
or
$ mpiexec -n 1 -env I_MPI_DEBUG 2,pid,host ./a.out
may produce the following output:
[0#1986@mpicluster001] MPI startup(): shared memory data transfer mode
Set output file name for debug information.
Syntax
Arguments
<arg> |
String value |
stdout |
Output to stdout - default value |
stderr |
Output to stderr |
<file_name> |
Specify the output file name for debug information |
Description
Set this environment variable if you want to split output of debug information from the output produced by an application. If you use format like %r, %p or %h, rank, pid or host name is added to the file name accordingly.
Define the default settings for the -perhost option in the mpiexec command.
Syntax
I_MPI_PERHOST=<value>
Arguments
<value> |
Define the default process layout |
<n> > 0 |
<n> processes per node |
all |
All logical CPUs on a node |
allcores |
All cores (physical CPUs) on a node |
Description
Set this environment variable to define the default setting for the -perhost option. If -perhost is explicitly called in the command line, the I_MPI_PERHOST environment variable has no effect. The -perhost option assumes the value of the I_MPI_PERHOST environment variable if this environment variable is defined.
Print library version information.
Syntax
I_MPI_PRINT_VERSION=<arg>
Arguments
<arg> |
Binary indicator |
enable | yes | on | 1 |
Print library version information. |
disable | no | off | 0 |
No action. This is the default value. |
Description
Set this environment variable to enable/disable printing of Intel® MPI library version information when an MPI application starts running.
(SDK only) I_MPI_JOB_TRACE_LIBS
(MPIEXEC_TRACE_LIBS)
Choose the libraries to preload through the -trace option.
Syntax
I_MPI_JOB_TRACE_LIBS=<arg>
Deprecated Syntax
MPIEXEC_TRACE_LIBS=<arg>
Arguments
<arg> |
String parameter |
<list> |
Blank separated list of libraries to preload. The default value is vt |
Description
Set this environment variable to choose an alternative library for preloading by the -trace option.
(SDK only) I_MPI_JOB_CHECK_LIBS
Choose the libraries to preload through the -check_mpi option.
Syntax
I_MPI_JOB_CHECK_LIBS=<arg>
Arguments
<arg> |
String parameter |
<list> |
Blank separated list of libraries to preload. The default value is vtmc |
Description
Set this environment variable to choose an alternative library for preloading by the -check_mpi option.
Set the mpiexec job startup timeout.
Syntax
I_MPI_JOB_STARTUP_TIMEOUT=<timeout>
Arguments
<timeout> |
|
<n> >= 0 |
The default timeout value is 20 seconds |
Description
Set this environment variable to make mpiexec wait for the job to start in <timeout> seconds after its launch. The <timeout> value should be greater than zero. Otherwise the environment variable setting is ignored and a warning message is printed. Setting this environment variable may make sense on large clusters with a lot of nodes where the job startup time may exceed the default value.
Note:
Set the I_MPI_JOB_STARTUP_TIMEOUT environment variable in the shell environment before executing the mpiexec command. Do not use the -genv or -env options for setting the <timeout> value. Those options are used only for passing environment variables to the MPI process environment.
(MPIEXEC_TIMEOUT)
Syntax
I_MPI_JOB_TIMEOUT=<timeout>
Deprecated Syntax
MPIEXEC_TIMEOUT=<timeout>
Arguments
<timeout> |
|
<n> >= 0 |
The default timeout value is zero, meaning no timeout |
Description
Set this environment variable to make mpiexec terminate the job in <timeout> seconds after its launch. The <timeout> value should be greater than zero. Otherwise the environment variable setting is ignored.
Note:
Set theI_MPI_JOB_TIMEOUT environment variable in the shell environment before executing the mpiexec command. Do not use the -genv or -env options for setting the <timeout> value. Those options are used only for passing environment variables to the MPI process environment.
(MPIEXEC_TIMEOUT_SIGNAL)
Define a signal to be used when a job is terminated because of a timeout.
Syntax
I_MPI_JOB_TIMEOUT_SIGNAL=<number>
Deprecated Syntax
MPIEXEC_TIMEOUT_SIGNAL=<number>
Arguments
<number> |
Define signal number |
<n> > 0 |
The default value is 9 (SIGKILL) |
Description
Define a signal number for task termination upon the timeout period specified by the environment variable I_MPI_JOB_TIMEOUT. If you set a signal number unsupported by the system,, mpiexec prints a warning message and continues task termination using the default signal number 9 (SIGKILL).
Define a signal to be sent to all processes when a job is terminated unexpectedly.
Syntax
I_MPI_JOB_ABORT_SIGNAL=<number>
Arguments
<number> |
Define signal number |
<n> > 0 |
The default value is 9 (SIGKILL) |
Description
Set this environment variable to define a signal for task termination. If you set an unsupported signal number, mpiexec prints a warning message and uses the default signal 9 (SIGKILL).
(MPIEXEC_SIGNAL_PROPAGATION)
Control signal propagation.
Syntax
I_MPI_JOB_SIGNAL_PROPAGATION=<arg>
Deprecated Syntax
MPIEXEC_SIGNAL_PROPAGATION=<arg>
Arguments
<arg> |
Binary indicator |
enable |yes | on| 1 |
Turn on propagation. |
disable | no | off | 0 |
Turn off propagation. This is the default value |
Description
Set this environment variable to control propagation of the signals (SIGINT, SIGALRM, and SIGTERM) that may be received by the MPD daemons. If signal propagation is enabled, the received signal is sent to all processes of the MPI job. If signal propagation is disabled, all processes of the MPI job are stopped with the default signal 9 (SIGKILL).
Set the size of the stdout/stderr output buffer.
Syntax
I_MPI_OUTPUT_CHUNK_SIZE=<size>
Arguments
<size> |
Define output chunk size in kilobytes |
<n> > 0 |
The default chunk size value is 1 KB |
Description
Set this environment variable to increase the size of the buffer used to intercept the standard output and standard error streams from the processes. If the <size> value is not greater than zero, the environment variable setting is ignored and a warning message is displayed.
Use this setting for applications that create a significant amount of output from different processes. With the -ordered-output mpiexec option, this setting helps to prevent the output from garbling.
Note:
Set the I_MPI_OUTPUT_CHUNK_SIZE environment variable in the shell environment before executing the mpiexec command. Do not use the -genv or -env options for setting the <size> value. Those options are used only for passing environment variables to the MPI process environment.
Turn on/off the use of the Intel® MPI Library Process Management Interface (PMI) extensions.
Syntax
Arguments
<arg> |
Binary indicator |
enable | yes | on | 1 |
Turn on the PMI extensions |
disable | no | off | 0 |
Turn off the PMI extensions |
Description
The Intel® MPI Library automatically detects if your process manager supports the PMI extensions. If supported, the extensions substantially decrease task startup time. Set I_MPI_PMI_EXTENSIONS to disable if your process manager does not support these extensions.
Specify the name to third party implementation of the PMI library.
Syntax
I_MPI_PMI_LIBRARY=<name>
Arguments
<name> |
Full name of the third party PMI library |
Description
Set I_MPI_PMI_LIBRARY to specify the name of third party PMI library. When you set this environment variable, provide full name of the library with full path to it.
(I_MPI_PMI_FAST_STARTUP)
Turn on/off the faster Intel® MPI Library process startup algorithm.
Syntax
I_MPI_JOB_FAST_STARTUP=<arg>
Deprecated Syntax
I_MPI_PMI_FAST_STARTUP=<arg>
Arguments
<arg> |
Binary indicator |
enable | yes | on | 1 |
Turn on the algorithm for fast startup. This is the default value |
disable | no | off | 0 |
Turn off the algorithm for fast startup |
Description
The new algorithm significantly decreases the application startup time. Some DAPL providers may be overloaded during startup of large number of processes (greater than 512). To avoid this problem, turn off this algorithm by setting the I_MPI_JOB_FAST_STARTUP environment variable to disable.
Select a particular TotalView* executable file to use.
Syntax
Arguments
<path> |
Path/name of the TotalView* executable file instead of the default totalview |
Description
Set this environment variable to select a particular TotalView* executable file.
Select the intended optimization platform.
Syntax
I_MPI_PLATFORM=<platform>
Arguments
<platform> |
Intended optimization platform (string value) |
auto[:min] |
Optimize for the oldest supported Intel® Architecture Processor across all nodes. This is the default value |
auto:max |
Optimize for the newest supported Intel® Architecture Processor across all nodes |
auto:most |
Optimize for the most numerous Intel® Architecture Processor across all nodes. In case of a tie, choose the newer platform |
uniform |
Optimize locally. The behavior is unpredictable if the resulting selection differs from node to node |
none |
Select no specific optimization |
htn | generic |
Optimize for the Intel® Xeon® Processors 5400 series and other Intel® Architecture processors formerly code named Harpertown |
nhm |
Optimize for the Intel® Xeon® Processors 5500, 6500, 7500 series and other Intel® Architecture processors formerly code named Nehalem |
wsm |
Optimize for the Intel® Xeon® Processors 5600, 3600 series and other Intel® Architecture processors formerly code named Westmere |
snb |
Optimize for the Intel® Xeon® Processors E3-1200 series and other Intel® Architecture processors formerly code named Sandy Bridge |
ivb |
Optimize for the Intel® Xeon® Processors E3-1225V2, E3-1275V2 series and other Intel® Architecture processors formerly code named Ivy Bridge |
knc |
Optimize for the Intel® Xeon® Processors (codename: Knights Corner). If Intel Xeon Phi coprocessor is present on the cluster, the value is chosen by default. |
Description
Set this variable to use the predefined platform settings. It is available for both Intel® and non-Intel microprocessors, but it may utilize additional optimizations for Intel microprocessors than it utilizes for non-Intel microprocessors.
Note:
The values auto:min, auto:max and auto:most may increase the MPI job startup time.
Turn on/off the optimization setting similarity check.
Syntax
I_MPI_PLATFORM_CHECK=<arg>
Argument
<arg> |
Binary indicator |
enable | yes | on | 1 |
Turns on the optimization platform similarity check. This is the default value |
disable | no | off | 0 |
Turns off the optimization platform similarity check |
Description
Set this variable to check the optimization platform settings of all processes for similarity. If the settings are not the same on all ranks, the library terminates the program. Disabling this check may reduce the MPI job startup time.