Developer Reference

Hydra Environment Variables

I_MPI_HYDRA_HOST_FILE

Set the host file to run the application.
Syntax
I_MPI_HYDRA_HOST_FILE=
<arg>
Argument
<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
<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>
Argument
<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>
Argument
<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>
Argument
<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.

I_MPI_JOB_STARTUP_TIMEOUT

Set the
mpiexec
job startup timeout.
Syntax
I_MPI_JOB_STARTUP_TIMEOUT=
<timeout>
Argument
<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.

I_MPI_HYDRA_BOOTSTRAP

Set the bootstrap server.
Syntax
I_MPI_HYDRA_BOOTSTRAP=
<arg>
Argument
<arg>
String parameter
service
Use hydra service agent
lsf
Use the LSF
blaunch
command
Description
Set this environment variable to specify the bootstrap server.
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>
Argument
<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.

I_MPI_HYDRA_PMI_CONNECT

Define the processing method for PMI messages.
Syntax
I_MPI_HYDRA_PMI_CONNECT=
<value>
Argument
<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>
Argument
<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
.
When running under a job scheduler, this environment variable is ignored by default. To control process placement with
I_MPI_PERHOST
, disable the variable.

I_MPI_HYDRA_BRANCH_COUNT

Set the hierarchical branch count.
Syntax
I_MPI_HYDRA_BRANCH_COUNT =
<num>
Argument
<num>
Number
<n> >
= 0
The default value is 16. This value means that hierarchical structure is enabled if the number of nodes is more than 16.
If I_MPI_HYDRA_BRANCH_COUNT=0, then there is no hierarchical structure.
If I_MPI_HYDRA_BRANCH_COUNT=-1, then branch count is equal to default value.
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>
Argument
<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.

I_MPI_HYDRA_IFACE

Set the network interface.
Syntax
I_MPI_HYDRA_IFACE=
<arg>
Argument
<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
.

I_MPI_TMPDIR

Specify a temporary directory.
Syntax
I_MPI_TMPDIR=
<arg>
Argument
<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>
Argument
<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.

I_MPI_PORT_RANGE

Specify a range of allowed port numbers.
Syntax
I_MPI_PORT_RANGE=
<range>
Argument
<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>
Argument
<int>
Define the port number
Description
Set this environment variable to inform  
mpiexec.hydra
, 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
<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
<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.

I_MPI_HYDRA_BSTRAP_KEEP_ALIVE

Set this variable to keep
hydra_bstrap_proxy
alive after launching
hydra_pmi_proxy
.
Syntax
I_MPI_HYDRA_BSTRAP_KEEP_ALIVE=
<arg>
Argument
<arg>
Binary indicator
enable | yes | on | 1
Do not close
hydra_bstrap_proxy
.
disable | no | off | 0
Close
hydra_bstrap_proxy
. This is the default value.
Description
Set this variable to keep
hydra_bstrap_proxy
alive after launching
hydra_pmi_proxy
. It allows you to keep full process tree (
mpiexec
—>
hydra_bstrap_proxy
—>
hydra_pmi_proxy
—> app) connected on localhost. The default value closes
hydra_bstrap_proxy
to reduce the number of running processes.

Product and Performance Information

1

Performance varies by use, configuration and other factors. Learn more at www.Intel.com/PerformanceIndex.