mpitask(1) Monitor MPI processes under LAM.

SYNOPSIS

mpitask [-cdh] [-gps] [nodes] [processes]

OPTIONS

-c
Print communicator descriptions. See "Communicators".
-d
Print datatype descriptions. See "Datatypes".
-gps
Print process information in GPS format.
-h
Print useful information on this command.

The -c and -d options are mutually exclusive.

DESCRIPTION

The mpitask command displays information on processes which are using MPI. One line is printed for each reported MPI process. With no processes or nodes explicitly specified on the command line, all MPI processes on all nodes are reported.

% mpitask

TASK (G/L)FUNCTIONPEER|ROOTTAGCOMMCOUNTDATATYPE
0/0 trivialSsend1/1123WORLD64INT
1/1 trivialRecv0/0456WORLD64INT

For each process mpitask normally prints the following information:

TASK
an identification of the process - If the process is currently communicating, a `/' followed by the process's rank within the current communicator is also displayed. The executable name, if available, is also displayed. See "MPI Process Identification".
FUNCTION
an abbreviated form of the function name if the process is blocked inside an MPI function - Otherwise one of the following execution states is printed:
running
free to run on the underlying OS
paused
blocked on lam_kpause(2)
stopped
stopped by the LAM signal, LAM_SIGARREST - See doom(1).
blocked
blocked in a LAM function - In general this should be a transitory state. Further information on a LAM process's state can be obtained with state(1).
PEER|ROOT
the source or destination of a point-to-point communication or the root process of certain collective communications, followed by a '/' and the process's rank within the current communicator -
TAG
the message tag, if any, which was specified as a parameter to the current MPI function
COMM
the communicator ID, if any, which was specified as a parameter to the current MPI function - Communicators used in collective calls are displayed with a * suffix. Further information on the communicator may be obtained with the -c option.
COUNT
the element count, if any, which was specified as a parameter to the current MPI function
DATATYPE
the element datatype, if any, which was specified as a parameter to the current MPI function - For intrinsic datatypes, a shortened version of the datatype name is displayed. For derived datatypes, a datatype label is displayed. Further information on the datatype may be obtained with the -d option.

MPI Process Identification

By default, MPI processes are identified by their rank in MPI_COMM_WORLD. We refer to this rank more concisely as the "global" rank (G). The rank within the currently employed communicator is referred to as the "local" rank (L).

Since processes may be dynamically spawned (see MPIL_Spawn(2)) and since multiple concurrent MPI applications are allowed, it is possible for multiple MPI_COMM_WORLD communicators to coexist. In these situations, the global rank is no longer globally unique and the identification is ambiguous. Thus, LAM provides an alternate way of identifying MPI processes, the GPS (Global Positioning System). A process's GPS consists of the nodeid the process is running on and the process's LAM index on that node. It is displayed in mpitask as the pair nnode,iindex. If the -gps option is given then the GPS is substituted for the global rank (G).

Communicators

If the -c option is given then information is no longer displayed in the horizontal format described above. Instead for each selected process currently using a communicator, the information from the TASK column, described above, is given followed by an expanded description of the communicator. This description includes the size of the communicator group(s) and the global identifiers of all members of the group(s).

Datatypes

If the -d option is given then information is no longer displayed in the horizontal format described above. Instead for each selected process currently using a communicator, the information from the TASK column, described above, is given followed by the datatype's type map.

EXAMPLES

mpitask
Display the status of all MPI processes on all nodes.
mpitask -c n0 i9
Display the communicator (if any) of process index 9 on node 0.

DIAGNOSTICS

If no MPI processes are found, only the title line is displayed.

BUGS

Sometimes processes may be shown as blocked inside a non-blocking MPI function. This occurs when the process is blocked inside the MPI function on some internal LAM event. Such states are highly transitory.