mpimsg - Monitor MPI message buffers under LAM.


SYNTAX

       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 <#>         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  mes­
       sages  which  were sent using the MPI library and are cur­
       rently 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  dis­
                      played.  See mpitask(1) for a discussion of
                      process identification.

                      cess

       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    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 infor­
                      mation  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)  regard­
       ing 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 sys­
       tem 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  informa­
       tion.  In this case nothing is printed.

   Message Contents
       If  the -m option is given then the contents of the speci­
       fied message are displayed.

       First the destination process identification and the  mes­
       sage  identification  is printed and then the message con­
       tents 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 actual­
       ly contiguous in the buffer and of the same basic type.

       The amount of a message that is to be printed can be  lim­
       ited  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  inte­
       gers,  then  a  limit of 20 would result in the display of
       the first 20 integers in the message, as  opposed  to  the


       Buffered  message  data is by default stored in LAM repre­
       sentation 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  op­
       tion  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)


Man(1) output converted with man2html