bionic (1) mpimsg.1.gz

Provided by: lam-runtime_7.1.4-3.1build1_amd64 bug

NAME

       mpimsg - Monitor MPI message buffers under LAM.

SYNOPSIS

       mpimsg [-gps] [-h] [-O] [-c seq] [-d seq] [-m seq] [-e #] [-B #] [nodes] [processes]

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 nn          Limit printing the contents of a message to # elements.

       -m seq         Print the contents of message seq.  See "Message Contents".

       -B nn          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.

       % 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       the element datatype

       MSG            the  message identifier - It is expressed in the form nnodeid,#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.

   Message Contents
       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
           Report all MPI messages.

       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

       bfctl(1), bfstate(1), libmpi(3), mpitask(1), sweep(1)