1MPIMSG(1)                        LAM COMMANDS                        MPIMSG(1)
2
3
4

NAME

6       mpimsg - Monitor MPI message buffers under LAM.
7

SYNTAX

9       mpimsg [-gps] [-h] [-O] [-c <seq>] [-d <seq>] [-m <seq>] [-e <#>] [-B
10              <#>] [<nodes>] [<processes>]
11

OPTIONS

13       -gps           Print process information in GPS format.
14
15       -h             Print useful information on this command.
16
17       -O             Multicomputer is homogeneous.  Do  no  data  conversion.
18                      See mpirun(1).
19
20       -c <seq>       Print  a description of the communicator used in message
21                      <seq>.  See mpitask(1).
22
23       -d <seq>       Print a description of  the  datatype  used  in  message
24                      <seq>.  See mpitask(1).
25
26       -e <#>         Limit  printing  the  contents  of a message to <#> ele‐
27                      ments.
28
29       -m <seq>       Print the contents of message <seq>.  See "Message  Con‐
30                      tents".
31
32       -B <#>         Change the limit on the number of messages reported.
33
34       The -c, -d and -m options are mutually exclusive.
35

DESCRIPTION

37       The mpimsg command displays information on buffered messages which were
38       sent using the MPI library and are currently buffered on the  specified
39       nodes  and  destined to the specified processes.  mpimsg typically only
40       works when the "daemon" mode of communication is  used;  it  cannot  be
41       used to monitor "client to client" (C2C) communications.
42
43       With  no  processes  or nodes explicitly specified on the command line,
44       all MPI messages on all nodes are reported.
45
46% mpimsg
47SRC (G/L)      DEST (G/L)     TAG     COMM    COUNT     DATATYPE    MSG
480/0            1/1            123     WORLD   64        INT         n1,#0
49
50       For each message mpimsg outputs the following information:
51
52       SRC            an identification of the source process - A `/' followed
53                      by  the process's rank within the message's communicator
54                      is also displayed.  See mpitask(1) for a  discussion  of
55                      process identification.
56
57       DEST           an identification of the destination process
58
59       TAG            the tag from the message envelope
60
61       COMM           the communicator identifier
62
63       COUNT          the number of data elements in the message
64
65       DATATYPE       the element datatype
66
67       MSG            the  message  identifier  -  It is expressed in the form
68                      n<nodeid>,#<seqnum>, where <nodeid> is the physical  lo‐
69                      cation  of  the  buffered  message and <seqnum> is a se‐
70                      quence number assigned to the  message  by  LAM.   These
71                      values are used to get further information on the commu‐
72                      nicator, datatype or message contents.
73
74       More detailed information on the message's communicator or datatype can
75       be  obtained with the -c or -d options.  The information is the same as
76       obtained by mpitask(1) regarding processes.  Unlike  mpitask(1),  these
77       options in mpimsg require a message identifier to isolate a single mes‐
78       sage.  Keep in mind that mpimsg invocations  are  snapshots  of  system
79       status.   It  is  possible  that  a buffered message shown in a call of
80       mpimsg may be received prior to a subsequent call to mpimsg made in or‐
81       der to display further information.  In this case nothing is printed.
82
83   Message Contents
84       If  the  -m  option is given then the contents of the specified message
85       are displayed.
86
87       First the destination process identification and the message  identifi‐
88       cation is printed and then the message contents are printed in a format
89       somewhat similar to that produced by the UNIX utility  od(1).   On  the
90       left  hand  side of each line the offset from the beginning of the data
91       buffer is printed in hexadecimal.  After that individual  elements  are
92       printed  according  to  their  type as deduced from the type signature.
93       Holes in the datatype and changes in basic type force newlines  in  the
94       output so in effect all elements on the same line of output are actual‐
95       ly contiguous in the buffer and of the same basic type.
96
97       The amount of a message that is to be printed can be limited  with  the
98       -e option.  The limit is specified in terms of a maximum number of ele‐
99       ments of a basic datatype that are to be printed.   For  example  if  a
100       message consists of 100 structures with each structure containing three
101       integers, then a limit of 20 would result in the display of  the  first
102       20  integers  in the message, as opposed to the first 20 structures (or
103       60 integers).
104
105       Buffered message data is by default stored in  LAM  representation  and
106       will  be converted to local representation for display.  In the case of
107       a homogeneous LAM and MPI processes run with the -O switch to mpirun(1)
108       message  data  will be stored in the common local representation of the
109       machines in the LAM.  In this case when using  the  -m  option  the  -O
110       switch  can  be  given in order to prevent the data conversion for dis‐
111       play.
112

EXAMPLES

114       mpimsg
115           Report all MPI messages.
116
117       mpimsg n1 -m 8 -e 20
118           Print the first 20 elements of message #8 on node 1.
119

DIAGNOSTICS

121       If no buffered messages are found, only the title  line  is  displayed.
122       If the message specified by -c, -d or -m is no longer buffered, nothing
123       is printed.
124

SEE ALSO

126       bfctl(1), bfstate(1), libmpi(3), mpitask(1), sweep(1)
127
128
129
130LAM 7.1.2                         March, 2006                        MPIMSG(1)
Impressum