Environment Variables (1MPI)

ENVIRONMENT VARIABLES

ENVIRONMENT VARIABLES OF GENERAL BEHAVIOR
MPIROOT      _YAMPI_ABORT_ON_CLOSE      _YAMPI_BACKTRACE      _YAMPI_BACKTRACE_CMDFILE      (NOCKPT/_YAMPI_CKPT)      _YAMPI_COMMON_PACK_SIZE      _YAMPI_CONFIG_FILE      _YAMPI_COPS      (_YAMPI_CWD)      _YAMPI_DEBUG      _YAMPI_DISABLE_UNIX      _YAMPI_DUMPCORE      (_YAMPI_EXTS)      _YAMPI_NOFLUSH      _YAMPI_PORT_RANGE      _YAMPI_PRINTINFO      _YAMPI_PROGNAME      (_YAMPI_QDUMP)      _YAMPI_RSH      (_YAMPI_RSIZE)      _YAMPI_SOCBUF      (_YAMPI_STATISTICS)      _YAMPI_THREADS     
CKPT_RESTART      _PSP_OPT
ENVIRONMENT VARIABLES TO CONTROL IMPI BEHAVIOUR
IMPI_AUTH_KEY      IMPI_AUTH_NONE      IMPI_CHILD_PROC      IMPI_CLIENT_ID      IMPI_COLL_MAXLINEAR      IMPI_COLL_XSIZE      IMPI_C_DATALEN      (IMPI_DEBUG)      (IMPI_DEBUG_RANK)      IMPI_H_ACKMARK      IMPI_H_HIWATER      (IMPI_INTER_RSH)      IMPI_MPIVER      (IMPI_NAME_PORT)      IMPI_NETWORK      IMPI_PARENT_PORT      IMPI_PORT_RANGE      IMPI_SERVER_PORT      IMPI_SERVER_PORT_RANGE     
ENVIRONMENT VARIABLES TO CONTROL COMPILER DRIVER
MP_PREFIX      _YAMPI_CC      _YAMPI_CXX      _YAMPI_F77      _YAMPI_F90      _YAMPI_EXTCOPT      _YAMPI_EXTFOPT      _YAMPI_EXTLIBS      _YAMPI_CKPTCOPT      _YAMPI_CKPTLIBS      _YAMPI_SCORELIB      _YAMPI_CC32FLAG      _YAMPI_CC64FLAG      _YAMPI_LD64FLAG      _YAMPI_AR64FLAG     
ENVIRONMENT VARIABLES OF SPECIFIC PLATFORMS
_YAMPI_AIX_FULLCORE      _YAMPI_SCORE_SCHDHINT      (_YAMPI_SCORE_WAITTICK)      (GMP_SQ_CHECK)     
ENVIRONMENT VARIABLES INTERNALLY USED

ENVIRONMENT VARIABLES OF GENERAL BEHAVIOR

GridMPI and YAMPII have many configurable settings which are all set through environment variables. Some variables are set internally by mpirun and mpiexec commands. A few variables are mandatory, especially MPIROOT and IMPI_AUTH_NONE are.

MPIROOT=directory
Specifies a GridMPI installation directory. Commands such as mpirun and mpicc searches under the directory for necessary binary and library files.

IMPI_AUTH_NONE=any
Specifies not to use authentication in the IMPI Server. The value is ignored. The IMPI specifies two weak methods of authentication: IMPI_AUTH_NONE and IMPI_AUTH_KEY. Either of these is required, and both of a run of IMPI Server and a run mpirun should set matching variables.

_YAMPI_RSH=remote-shell-command
Specifies a remote shell command. Typical choice is "rsh" or "ssh". RSH is the default.

_YAMPI_CONFIG_FILE=file-name
Specifies a file name of a host configuration file for YAMPII. Default is a "mpi_conf" in the current directory.

_YAMPI_SOCBUF=number
Specifies a buffer size of sockets (SNDBUF/RCVBUF) in decimal bytes. It calls sockopt with a specified value. (1) Specifying a number sets the value. If the value is non-numerical or negative, it sets the OS default. (2) Unspecifying this sets a YAMPII default 64KB. (3) Empty string or "0" sets the OS default.

_YAMPI_PORT_RANGE=start:end
Specifies a port range to listen to for intra-cluster connection. Port numbers from start to end (inclusive) are tried.

IMPI_PORT_RANGE=start:end
Specifies a port range to listen to for IMPI connection. Port numbers from start to end (inclusive) are tried.

IMPI_SERVER_PORT_RANGE=start:end
Specifies a port range to listen to for IMPI server connection. Port numbers from start to end (inclusive) are tried.

IMPI_NETWORK=network-number
Specifies the network interface by the network address. It is used when the machines have multiple network interfaces and the global connection is on other than the primary interface. It is specified by the format of the address like "163.220.2.0", and it is matched after masking by the netmask.

IMPI_MPIVER=1/2
(USED IN THE MPI-2 IMPLEMENTATION).

_YAMPI_ABORT_ON_CLOSE=0/1/2
Specifies a behaviour on close of sockets. _YAMPI_ABORT_ON_CLOSE=0 specifies not to abort, _YAMPI_ABORT_ON_CLOSE=1 (default) specifies to abort siliently, and _YAMPI_ABORT_ON_CLOSE=2 aborts with signaling an error. It is effective for TCP/IP transport (including IMPI protocol).

_YAMPI_BACKTRACE=0/1
Specifies to print backtrace at errors.

_YAMPI_BACKTRACE_CMDFILE=command
(Specifies a command to print backtrace at errors.)

_YAMPI_COMMON_PACK_SIZE=any
Specifies to use the standard packing for long double. The default is NOT standard conforming: It packs long double to sizeof(long double) instead of standard-specified 16 bytes, even in the external32 format. This breaks data exchange in a heterogeneous environment. For conforming packing, set this variable to any value. The default is chosen to make often-occurring badly-coded programs work in a homogeneous environment.

_YAMPI_COPS=number
Specifies a collective operation option. GridMPI may define some algorithms for collective operations, and this value chooses one. It is very implementation specific.

_YAMPI_DISABLE_UNIX=any
Specifies to disable using UNIX domain sockets.

_YAMPI_DUMPCORE=0/1
Specifies to dump cores at MPI_Abort.

_YAMPI_THREADS=0/1
Specifies to enable threads always without regard to the use of MPI_Init. It is effective only when configured with threads.

_YAMPI_NOFLUSH=any
Specifies to disable buffering on stdout/stderr. This controls setlinebuf(3C) on stdout/stderr. Default is line-by-line flushing. When _YAMPI_NOFLUSH is set, flushing is disabled, which makes dumping via stdout faster for a large amount of data.

_YAMPI_PRINTINFO=0/1
Specifies to print some information verbosely at startup.

ENVIRONMENT VARIABLES TO CONTROL IMPI BEHAVIOUR

GridMPI has control of the parameters defined in the IMPI specification through environment variables. The precise meaning of the parameters can be found in the IMPI specification.

The values are unsigned 32-bit values (except IMPI_AUTH_KEY), but specifying too large values will break the resource limit. The implementation does not force a limit on the values.

IMPI_AUTH_NONE=any
Specifies NOT to use any authentication in connecting to the IMPI Server. The value is ignored. (See the IMPI specification).

IMPI_AUTH_KEY=value
Specifies to use the simple KEY authentication protocol in connecting to the IMPI Server. The key value is given as 64-bit decimal integer. It is matched between IMPI Server invocation and MPI process invocation. (See the IMPI specification).

IMPI_C_DATALEN=value (default 65536 bytes)
Specifies the maximum data bytes (payload size) in a packet. The smallest value from the clients is negotiated. (See the IMPI specification).

IMPI_COLL_XSIZE=value (default 1024 bytes)
Specifies a cross-over point of collective algorithms by message size. This specifies the least byte size to use long algorithms. All clients must specify the same value, or an error is signalled. (See the IMPI specification).

IMPI_COLL_MAXLINEAR=value (default 4)
Specifies a cross-over point of collective algorithms by the number of hosts (In GridMPI-0.2, the number of hosts equals to the total number of procs). This specifies the least number of hosts to use "non-linear (hypercube)" algorithms. All clients must specify the same value, or an error is signalled. (See the IMPI specification).

IMPI_H_ACKMARK=value (default 10 packets)
Specifies a flow control parameter. Acks are returned at every ack-mark packets. The smallest value from the clients is negotiated. (See the IMPI specification with errata).

IMPI_H_HIWATER=value (default 20 packets)
Specifies a flow control parameter. It is an upper limit of received packets without sending an ack. The smallest value from the clients is negotiated. (See the IMPI specification with errata).

The following constraint is maintained: (1 ≤ IMPI_H_ACKMARK ≤ IMPI_H_HIWATER).

IMPI_C_TAGUB=value
Unspecifiable. The value of TAGUB of YAMPII (0x7fffffff) is used.

ENVIRONMENT VARIABLES TO CONTROL COMPILER DRIVER

These override the default set at configuration time.

MP_PREFIX=directory path

_YAMPI_CC=compiler
Specifies a C compiler for mpicc.

_YAMPI_CXX=compiler
Specifies a C++ compiler for mpic++.

_YAMPI_F77=compiler
Specifies a F77 compiler for mpif77.

_YAMPI_F90=compiler
Specifies a F90 compiler for mpif90.

_YAMPI_EXTCOPT=options

_YAMPI_EXTFOPT=options

_YAMPI_EXTLIBS=options

_YAMPI_CKPTCOPT=options

_YAMPI_CKPTLIBS=options

_YAMPI_SCORELIB=options

_YAMPI_CC32FLAG=options

_YAMPI_CC64FLAG=options

_YAMPI_LD64FLAG=options

_YAMPI_AR64FLAG=options

ENVIRONMENT VARIABLES OF SPECIFIC PLATFORMS

_YAMPI_AIX_FULLCORE=0/1
Setting 1 to this makes to dump full core in AIX. AIX dumps only the stack by default, which does not include the data.

_YAMPI_SCRUN=command

_YAMPI_SCORE_SCHDHINT=0/1
Setting 1 to this variable lets the transport layer call SCORE_BECOME_BUSY/IDLE to notify the activity to the SCore deamon. It is off by default.

GMP_SQ_CHECK
(undocuemnted)

ENVIRONMENT VARIABLES INTERNALLY USED

Environment variables are used to pass information from commands like mpirun to MPI processes. These are listed for the information purpose and are not intended for direct use. These variables may change or be missing in the future releases.

_YAMPI_DEBUG=0/1 (mpirun sets this)

_YAMPI_NPROC=nprocs (mpirun sets this)

_YAMPI_PROGNAME=name (mpirun sets this)

_YAMPI_MYRANK=rank (mpirun sets this)

_YAMPI_PHOST=host (mpirun sets this)

_YAMPI_PPORT=port (mpirun sets this)

_YAMPI_ARCH=hostname (mpirun sets this)
Specifies a transport. The default is 0 (YAMPII/TCP).

IMPI_SERVER_PORT=port (mpirun sets this)

IMPI_CLIENT_ID=id (mpirun sets this)

IMPI_PARENT_PORT=port (--)

IMPI_CHILD_PROC=rank? (--)

CKPT_DIR=dir (gridmpirun sets this)
Checkpoint files are stored in the directory $CKPT_DIR. (= ".")

CKPT_FILE=name (gridmpirun and mpirun set this)

CKPT_RESTART=0/1 (gridmpirun sets this)

_PSP_OPT=interface:classid[,...]
Specifies pairs of interface device such as eth0 and class-id such as 1:1. See tc(8) man page about class-id. (SUPPORT LINUX ONLY)


($Date: 2006/12/01 10:03:07 $)