tally(1) 

NAME
     tally - prints out various statistics about  an  AIMS  Trace
     file

SYNOPSIS
     tally [ -options ] [ sorted trace file ]

DESCRIPTION
     tally will print several  tables  of  statistics  about  the
     given  trace  file  to stdout or disk files.  The tables are
     formatted so that they may  be  directly  loaded  into  most
     standard spreadsheet packages (e.g. WingZ or Excel.)

     Four types of information can be printed out:  routine  sum-
     mary, node summary, normalized cpu usage, and message sizes.

     The routine summary table contains the following columns:

          Routine name

          Busy Time
          Time not spent in communication

          Global Blocks
          Time spent waiting for global operations to complete

          Send Blocks
          Time spent waiting for send operation to complete

          Receive Blocks
          Time spent waiting for a message to arrive

          Lifetime
           Lifetime is the total time spent in  the  function  by
          all processors

          Percentage Communication
          This is the fraction of time spent in the  function  in
          communications.

          Communication Index
          This index can be used to determine  the  functions  in
          which  the  optimization  of  communications may have a
          significant impact on the overall program  performance.
          The  index  is  defined by the ratio of the fraction of
          time not spent in "useful" computation in a function to
          the  lifetime  of  the  entire program.  The larger the
          index value for a function,  the greater  the  need  to
          optimize the communications in the function.

     The Node Summary table contains the following columns  (most
     are explained above):

          Node number

          Busy time

          Global Blocks

          Send Blocks

          Receive Blocks

          Lifetime

          Percentage Communication

     A set of routine summary tables list the  following  columns
     for all functions which perform communications:

          Node number

          Busy time

          Global Blocks

          Send Blocks

          Receive Blocks

          Lifetime

          Percentage Communication

          All times are given in milliseconds

     In addition to displaying the above tables on  the  standard
     output,   the  above  set  of  tables are stored in the file
     "tally.summary".

     After these tables, two additional tables are  printed  that
     reflect  the  concurrency of the execution.  The first table
     prints the Normalized CPU Usage statistic ( cref.  Quartz  )
     The  table  is  broken  down  by  context  and level of con-
     currency.  The time in each cell (given in microseconds)  is
     the  ammount  of CPU time used in the given context when the
     system was at the given level of concurrency divided by  the
     level  of  concurrency.   This will show which routines were
     active when system exhibited poor (or acceptable) levels  of
     concurrency.  The second table has identical axis, but shows
     the ammount of time speant while N copies of that particular
     context  were running (if they are blocked, it is tallied as
     context  were running (if they are blocked, it is tallied as
     NOT running).  See the AIMS Reference Manual for an  example
     in more detail.

     In addition to displaying the two above tables on the  stan-
     dard   output,    these   tables  are  stored  in  the  file
     "ncpu.summary".

     Information about message sizes sent  or  received  on  each
     node  can  also be printed out.  They are summarized as mes-
     sage library call names, types of the calls ( SEND  or  RECV
     ),  message size, and frequencies.  After this table, a sum-
     mary of sending and receiving message buffers is given.   It
     lists total counts of sending and receiving for each message
     size and any  mis-matches.   The  message  size  tables  are
     stored in the file "msgsize.summary" or printed on the stan-
     dard output.

OPTIONS
     -proc[=Name]
          print information for procedure or routine.  Name is  a
          routine name, "" or "". If Name is omit-
          ted, all routines are printed.

     -node[=Node]
          print information for node.  Node is a node name  or  a
          node number. If Node is omitted, all nodes are printed.

     -ncpu
          print information about normalized cpu usage.

     -msg  print information about message sizes per node.

     -all  print all information (proc+node+ncpu+msg).

     --     print information to <stdout> rather than  to  files.
          The default is to store information to files.

     -help
          if present, a brief help message is printed.

     The default setup is to print information for  routines  and
     nodes.   If  you  want  to  store all the information to one
     file, try to use "tally -all -- tracefile > outfile".

FILES
     tally.summary
     ncpu.summary
     msgsize.summary

SEE ALSO
     AIMS(1), xinstrument(1), tracesort(1), VK(1)
     The AIMS Reference Manual

AIMS Release 3.6   Last change: 5 January 1997