DMPCNTANAL(1)                Retro Project Manual                DMPCNTANAL(1)


NAME
       dmpcntanal - analyze dmpcnt data

SYNOPSIS
       dmpcntanal [OPTION]...  FILE
       dmpcntanal --help

DESCRIPTION
       Reads a list of CPU performance counter raw data, usually generated via
       a rw11::pc_lsta command, and generates human-readable reports.

OPTIONS
       --cstate
              show the CPU state columns, which give in percent  the  fraction
              of clock cycles spend in different CPU states:

              cp     console port handling, mostly rbus processing.
              km>0   kernel mode at priority > 0, interrupt handling or inter-
                     rupt lock-out
              km=0   kernel mode at priority == 0
              wait   idling in a WAIT instruction
              sm     supervisor mode
              sum    user mode

       --cevents
              show the CPU events columns

              Min/s  instruction rate in MHz
              vfetc  vector-fetch rate, the sum of traps, exceptions, and  in-
                     terrupts.
              irupt  interrupt rate
              i/b    instruction per branch

       --clk  clock  rate  on  MHz,  counting only cycles when CPU running. In
              normal operation this is equivalent to the system clock rate.

       --cpi  show the CPU cycle/instruction column.

       --cpb  show the CPU cycle/branch column.

       --cache
              show all cache columns.

              r/i    number of read requests per instruction.
              w/i    number of write requests per instruction.
              rhit   read hit rate in %.
              whit   write hit rate in %.
              rwt    average number of wait cycles per memory  read  (in  miss
                     case).
              wwt    average  number  of  wait  cycles  per memory write (from
                     backpressure).
              wt/i   average number of memory wait cycles per instruction.

       --chit show cache columns rhit, whit and wt/i, subset of --cache.

       --ibus show all ibus columns.

              rdkH   ibus read rate in kHz.
              wrkH   ibus write rate in kHz.
              wt/r   average number of ibus wait cycles (read and  write  com-
                     bined).

       --rbus show all rbus columns.

              rdkH   ibus read rate in kHz.
              wrkH   ibus write rate in kHz.
              wt/r   average  number  of ibus wait cycles (read and write com-
                     bined).

       --raw=clist
              show raw data of the counters given in the comma-separated  list
              of counter names clist.

       --dat=clist
              show data rate of the counters given in the comma-separated list
              of counter names clist.

       --fmt=hdr,[fmt],[mul],num[,den]
              add custom column with a scaled counter rate or a scaled counter
              ratio specified with

              hdr    text  for  header. The length if the header must be equal
                     or less than the width of the format.
              fmt    format in the form like w.p  with  a  single-digit  field
                     width  w and single-digit precision p. If p is 0 no deci-
                     mal point is printed. If omitted 4.1 is assumed.
              mul    multiplier, given as integer  of  floating-point  number.
                     If omitted 1. is assumed.
              num    name of numerator counter
              den    name  of  denominator  counter.  If  specified  the ratio
                     num/den is printed, if omitted the rate num is printed.

       --sum=nam[,from[,to]]
              allows to determine averages for a given time interval with

              nam    name printed in the 1st column, up to  6  characters  al-
                     lowed.
              from   start time of averaging, if omitted start at begin.
              to     end time of averaging, if omitted sum to the end.

       --tot  add  line  with  average values for the whole dataset, short for
              -sum=total.

       --cpu  short for -cstate -cevent -chit. If no option which generates an
              output column is given and a -cpu style output is generated.

       --all  short for -cstate -cevent -cache -ibus -rbus.

       --hpl=n
              print header after n lines.

       --help print full help text and exit.

COLUMN DEFINITIONS
       All  standard  columns  generated  via options like -cstate can also be
       created via the -fmt option with the following parameters

           name    format  mul     numerator     denominator

           cp      4.1     100.    cpu_cpbusy    cpu_tot
           km>0    4.1     100.    cpu_km_prix   cpu_tot
           km=0    4.1     100.    cpu_km_pri0   cpu_tot
           wait    4.1     100.    cpu_km_wait   cpu_tot
           sm      4.1     100.    cpu_sm        cpu_tot
           um      4.1     100.    cpu_um        cpu_tot

           Min/s   5.2     1.e-6   cpu_idec
           vfetch  5.0     1.      cpu_vfetch
           irupt   5.0     1.      cpu_irupt
           i/b     4.1     1.      cpu_idec      cpu_pcload

           r/i     4.2     1.      ca_rd         cpu_idec
           w/i     4.2     1.      ca_wr         cpu_idec
           rhit    4.1     100.    ca_rdhit      ca_rd
           whit    4.1     100.    ca_wrhit      ca_wr
           rwt     4.1     1.      ca_rdwait     ca_rdmem
           wwt     4.1     1.      ca_wrwait     ca_wrmem
           wt/i    4.1     1.      ca_totwt      cpu_idec

           rdkH    4.2     1.e-3   ib_rd
           wrkH    4.2     1.e-3   ib_wr
           wt/r    4.1     1.      ib_busy       ib_tot

           rdkH    4.2     1.e-3   rb_rd
           wrkH    4.2     1.e-3   rb_wr
           wt/r    4.1     1.      rb_busy       rb_tot


EXAMPLES
       dmpcntanal -cstate -cevent -tot pc_dmpcnt_xxx.dat
           reads the file pc_dmpcnt_xxx.dat and generates a  report  with  the
           -cstate and -cevent columns sets.

           The input file is typically generated by a ti_w11 Tcl command like

             rw11::pc_clear
             rw11::pc_start
             rw11::pc_lsta pc_dmpcnt_xxx.dat

           The output might look like

             time  ------ cpu state in % -------  ----- cpu events -----
              sec    cp km>0 km=0 wait   sm   um  Min/s vfetc irupt  i/b
            ...
             38.0   0.7 10.4 19.2  4.0  0.0 65.7   8.95  1319   712  4.2
             39.0   0.4  5.1  9.9  1.4  0.0 83.1   9.76  1021   373  4.0
             40.0   0.7  9.4 18.6  3.6  0.0 67.8   8.60  1135   616  4.5
             41.0   0.4  4.6  9.5  1.1  0.0 84.4   9.81  1190   313  4.1
             42.0   0.6  7.1 18.0  3.4  0.0 70.8   9.33  1153   611  3.9
             43.0   0.5  7.6 15.0  4.1  0.0 72.7   9.15  1278   540  4.1
             44.0   0.6  9.2 15.8  3.0  0.0 71.4   8.87  1267   509  4.4
             45.0   0.6  7.4 16.7  3.2  0.0 72.1   8.96  1276   552  4.2
            ...
             time  ------ cpu state in % -------  ----- cpu events -----
              sec    cp km>0 km=0 wait   sm   um  Min/s vfetc irupt  i/b
            total   0.5  7.0 17.0 19.7  0.0 55.8   7.28  1453   471  3.9


SEE ALSO
       ti_w11(1)


AUTHOR
       Walter F.J. Mueller <W.F.J.Mueller@gsi.de>


Retro Project                     2018-10-21                     DMPCNTANAL(1)
 
Generated: 2023-02-09
Generated by man2html V0.26
page hit count: 401
Valid CSS Valid XHTML 1.0 Strict