Developer Reference

  • 2020
  • 09/11/2020
  • Public Content

Hydra Environment Variables

I_MPI_HYDRA_HOST_FILE
Set the host file to run the application.
Syntax
I_MPI_HYDRA_HOST_FILE=<arg>
Arguments
<arg>
String parameter
<hostsfile>
The full or relative path to the host file
Description
Set this environment variable to specify the hosts file.
I_MPI_HYDRA_HOSTS_GROUP
Set node ranges using brackets, commas, and dashes.
Syntax
I_MPI_HYDRA_HOSTS_GROUP=<arg>
Argument
/p>
<arg>
Set a node range.
Description
Set this variable to be able to set node ranges using brackets, commas, and dashes (like in Slurm* Workload Manager). For example:
I_MPI_HYDRA_HOSTS_GROUP=”hostA[01-05],hostB,hostC[01-05,07,09-11]”
You can set node ranges with the
-hosts-group
option.
I_MPI_HYDRA_DEBUG
Print out the debug information.
Syntax
I_MPI_HYDRA_DEBUG=<arg>
Arguments
<arg>
Binary indicator
enable | yes | on | 1
Turn on the debug output
disable | no | off | 0
Turn off the debug output. This is the default value
Description
Set this environment variable to enable the debug mode.
I_MPI_HYDRA_ENV
Control the environment propagation.
Syntax
I_MPI_HYDRA_ENV=<arg>
Arguments
<arg>
String parameter
all
Pass all environment to all MPI processes
Description
Set this environment variable to control the environment propagation to the MPI processes. By default, the entire launching node environment is passed to the MPI processes. Setting this variable also overwrites environment variables set by the remote shell.
I_MPI_JOB_TIMEOUT
Set the timeout period for
mpiexec
.
Syntax
I_MPI_JOB_TIMEOUT=<timeout>
I_MPI_MPIEXEC_TIMEOUT=<timeout>
Arguments
<timeout>
Define
mpiexec
timeout period in seconds
<n>
0
The value of the timeout period. The default timeout value is zero, which means 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 this environment variable in the shell environment before executing the
mpiexec
command. Setting the variable through the
-genv
and
-env
options has no effect.
I_MPI_JOB_STARTUP_TIMEOUT
Set the
mpiexec
job startup timeout.

Syntax

I_MPI_JOB_STARTUP_TIMEOUT=<timeout>

Arguments

<timeout>
Define
mpiexec
startup timeout period in seconds
<n>
0
The value of the timeout period. The default timeout value is zero, which means no timeout.

Description

Set this environment variable to make
mpiexec
terminate the job in
<timeout>
seconds if some processes are not launched. The
<timeout>
value should be greater than zero.

Description

I_MPI_HYDRA_BOOTSTRAP
Set the bootstrap server.

Syntax

I_MPI_HYDRA_BOOTSTRAP=<arg>

Arguments

<arg>
String parameter
service
Use hydra service agent
lsf
Use the LSF
blaunch
command

Description

Set this environment variable to specify the bootstrap server.
Note
Set the
I_MPI_HYDRA_BOOTSTRAP
environment variable in the shell environment before executing the
mpiexec
command. Do not use the
-env
option to set the
<arg>
value. This option is used for passing environment variables to the MPI process environment.
Note
LSF bootstrap requires an Intel MPI install path without spaces, or startup may hang.
Note
LSF bootstrap is chosen automatically if LSF environment variables are found.  If the
-hosts
option is specified, LSF bootstrap will not be chosen by default. Set
I_MPI_HYDRA_BOOTSTRAP=lsf
for this case.
I_MPI_HYDRA_BOOTSTRAP_EXEC
Set the executable file to be used as a bootstrap server.

Syntax

I_MPI_HYDRA_BOOTSTRAP_EXEC=<arg>

Arguments

<arg>
String parameter
<executable>
The name of the executable file

Description

Set this environment variable to specify the executable file to be used as a bootstrap server.

Description

I_MPI_HYDRA_PMI_CONNECT
Define the processing method for PMI messages.

Syntax

I_MPI_HYDRA_PMI_CONNECT=<value>

Arguments

<value>
The algorithm to be used
nocache
Do not cache PMI messages
cache
Cache
PMI
messages on the local
pmi_proxy
management processes to minimize the number of
PMI
requests. Cached information is automatically propagated to child management processes.
lazy-cache
cache
mode with on-demand propagation.
alltoall
Information is automatically exchanged between all
pmi_proxy
before any get request can be done.This is the default value.

Description

Use this environment variable to select the PMI messages processing method.
I_MPI_PERHOST
Define the default behavior for the
-perhost
option of the
mpiexec
command.

Syntax

I_MPI_PERHOST=<value>

Arguments

<value>
Define a value used for
-perhost
by default
integer > 0
Exact value for the option
all
All logical CPUs on the node
allcores
All cores (physical CPUs) on the node. This is the default value.

Description

Set this environment variable to define the default behavior for the
-perhost
option. Unless specified explicitly, the
-perhost
option is implied with the value set in
I_MPI_PERHOST
.
Note
When running under a job scheduler, this environment variable is ignored by default. To be able to control process placement with
I_MPI_PERHOST
, disable the
I_MPI_JOB_RESPECT_PROCESS_PLACEMENT
variable.

Description

I_MPI_HYDRA_BRANCH_COUNT
Set the hierarchical branch count.

Syntax

I_MPI_HYDRA_BRANCH_COUNT =<num>

Arguments

<num>
Number
<n>
>= 0
  • The default value is
    -1
    if less than 128 nodes are used. This value also means that there is no hierarchical structure
  • The default value is
    32
    if more than 127 nodes are used

Description

Set this environment variable to restrict the number of child management processes launched by the
mpiexec
operation or by each
pmi_proxy
management process.
I_MPI_HYDRA_PMI_AGGREGATE
Turn on/off aggregation of the PMI messages.

Syntax

I_MPI_HYDRA_PMI_AGGREGATE
=
<arg>

Arguments

<arg>
Binary indicator
enable | yes | on | 1
Enable PMI message aggregation. This is the default value.
disable | no | off | 0
Disable PMI  message aggregation.

Description

Set this environment variable to enable/disable aggregation of PMI messages.

Description

I_MPI_HYDRA_IFACE
Set the network interface.

Syntax

I_MPI_HYDRA_IFACE=<arg>

Arguments

<arg>
String parameter
<network interface>
The network interface configured in your system

Description

Set this environment variable to specify the network interface to use. For example, use "
-iface ib0
", if the IP emulation of your InfiniBand* network is configured on
ib0
.

Description

I_MPI_TMPDIR
Specify a temporary directory.

Syntax

I_MPI_TMPDIR=<arg>

Arguments

<arg>
String parameter
<path>
Temporary directory. The default value is
/tmp

Description

Set this environment variable to specify a directory for temporary files.
I_MPI_JOB_RESPECT_PROCESS_PLACEMENT
Specify whether to use the process-per-node placement provided by the job scheduler, or set explicitly.

Syntax

I_MPI_JOB_RESPECT_PROCESS_PLACEMENT=<arg>

Arguments

<value>
Binary indicator
enable | yes | on | 1
Use the process placement provided by job scheduler. This is the default value
disable | no | off | 0
Do not use the process placement provided by job scheduler

Description

If the variable is set, the Hydra process manager uses the process placement provided by job scheduler (default). In this case the
-ppn
option and its equivalents are ignored. If you disable the variable, the Hydra process manager uses the process placement set with
-ppn
or its equivalents.

Description

I_MPI_PORT_RANGE
Specify a range of allowed port numbers.

Syntax

I_MPI_PORT_RANGE=<range>

Arguments

<range>
String parameter
<min>:<max>
Allowed port range

Description

Set this environment variable to specify a range of the allowed port numbers for the Intel® MPI Library.
I_MPI_HYDRA_SERVICE_PORT
Set the port on which the hydra service is installed.

Syntax

I_MPI_HYDRA_SERVICE_PORT=<int>

Arguments

<int>
Define the port number

Description

Set this environment variable to inform
mpiexec
, on which port the hydra service is installed. Use this variable if you want to run a number of services on different ports.
To be able to run a number of hydra services, follow these steps:
  1. Start
    cmd
    and run hydra services:
    > start hydra_service -p <port1> -d > start hydra_service -p <port2> -d
  2. Set the environment variable to choose the service to be used:
    set I_MPI_HYDRA_SERVICE_PORT=”port2”
  3. Run
    mpiexec
    as usual
I_MPI_SILENT_ABORT
Control abort warning messages.

Syntax

I_MPI_SILENT_ABORT=<arg>

Argument

/p>
<arg>
Binary indicator
enable | yes | on | 1
Do not print abort warning message
disable | no | off | 0
Print abort warning message. This is the default value

Description

Set this variable to disable printing of abort warning messages. The messages are printed in case of the MPI_Abort call.  
You can also disable printing of these messages with the
-silent-abort
option.
I_MPI_HYDRA_NAMESERVER
Specify the nameserver.

Syntax

I_MPI_HYDRA_NAMESERVER=<arg>

Argument

/p>
<arg>
String parameter
<hostname>:<port>
Set the hostname and the port.

Description

Set this variable to specify the nameserver for your MPI application in the following format:
I_MPI_HYDRA_NAMESERVER = hostname:port
You can set the nameserver with the
-nameserver
option.

Product and Performance Information

1

Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice.

Notice revision #20110804