MPIMSG (1)
Monitor MPI message buffers under LAM.
SYNTAX
0
mpimsg [-gps] [-h] [-O] [-c <seq>] [-d <seq>] [-m <seq>] [-e <#>] [-B <#>]
[<nodes>] [<processes>]
1
b
OPTIONS
-gps
Print process information in GPS format.
-h
Print useful information on this command.
-O
Multicomputer is homogeneous.
Do no data conversion.
See mpirun(1).
-c <seq>
Print a description of the communicator used in message <seq>.
See mpitask(1).
-d <seq>
Print a description of the datatype used in message <seq>.
See mpitask(1).
-e <#>
Limit printing the contents of a message to <#> elements.
-m <seq>
Print the contents of message <seq>.
See "Message Contents".
-B <#>
Change the limit on the number of messages reported.
The -c, -d and -m options are mutually exclusive.
DESCRIPTION
The
mpimsg
command displays information on buffered messages which were sent
using the MPI library and are currently buffered on the
specified nodes and destined to the specified processes.
mpimsg
typically only works when the "daemon" mode of communication is used;
it cannot be used to monitor "client to client" (C2C) communications.
With no processes or nodes explicitly specified on the command
line, all MPI messages on all nodes are reported.
n .ta 15 30 38 46 56 68
t .ta 1.25i 2.5i 3.75i 4.5i 5.25i 6.25i
0
% mpimsg
SRC (G/L) DEST (G/L) TAG COMM COUNT DATATYPE MSG
0/0 1/1 123 WORLD 64 INT n1,#0
For each message
mpimsg
outputs the following information:
SRC
an identification of the source process -
A `/' followed by the process's rank within the
message's communicator is also displayed.
See mpitask(1) for a discussion of process identification.
DEST
an identification of the destination process
TAG
the tag from the message envelope
COMM
the communicator identifier
COUNT
the number of data elements in the message
DATATYPE
MSG
the message identifier -
It is expressed in the form n<nodeid>,#<seqnum>, where <nodeid> is
the physical location of the buffered message and <seqnum> is a
sequence number assigned to the message by LAM.
These values are used to get further information on the communicator,
datatype or message contents.
More detailed information on the message's communicator or datatype
can be obtained with the -c or -d options.
The information is the same as obtained by mpitask(1) regarding processes.
Unlike mpitask(1), these options in
mpimsg
require a message identifier to isolate a single message.
Keep in mind that
mpimsg
invocations are snapshots of system status.
It is possible that a buffered message shown in a call of
mpimsg
may be received prior to a subsequent call to
mpimsg
made in order to display further information.
In this case nothing is printed.
If the -m option is given then the contents of the specified message are
displayed.
First the destination process identification and the message identification
is printed and then the message contents are printed in a format somewhat
similar to that produced by the UNIX utility od(1).
On the left hand side of each line the offset from the beginning of the
data buffer is printed in hexadecimal.
After that individual elements are printed according to
their type as deduced from the type signature.
Holes in the datatype and changes in basic type force newlines in the output
so in effect all elements on the same line of output are actually
contiguous in the buffer and of the same basic type.
The amount of a message that is to be printed can be limited with the -e
option.
The limit is specified in terms of a maximum number of elements
of a basic datatype that are to be printed.
For example if a message consists of 100 structures with each structure
containing three integers, then a limit of 20 would result in the display
of the first 20 integers in the message, as opposed to the first 20
structures (or 60 integers).
Buffered message data is by default stored in LAM representation and
will be converted to local representation for display.
In the case of a homogeneous LAM and MPI processes run with the -O
switch to mpirun(1) message data will be stored in the common local
representation of the machines in the LAM.
In this case when using the -m option the -O switch can be given
in order to prevent the data conversion for display.
EXAMPLES
mpimsg
mpimsg n1 -m 8 -e 20
Print the first 20 elements of message #8 on node 1.
DIAGNOSTICS
If no buffered messages are found, only the title line is displayed.
If the message specified by -c, -d or -m is no longer buffered,
nothing is printed.
SEE ALSO
|