Google
 

Trailing-Edge - PDP-10 Archives - BB-L288A-RM - swskit-documentation/performance.memos
There are 5 other files named performance.memos in the archive. Click here to see a list.


                        FRIDAY


FRIDAY is a TOPS-20 performance tool that can be used to analyze  both
system  and job performance.  FRIDAY outputs an incremental picture of
what is happening on the system.  This report is intended to  be  used
as an aid in understanding how the system resources are being used and
what steps should be  taken  to  make  more  efficient  use  of  these
resources.

How to run FRIDAY:

1)      FRIDAY is a privileged program.  As such it requires that  the
        process  in  which FRIDAY is running has "WHEEL" or "OPERATOR"
        capabilities enabled.

        @ ENABLE (CAPABILITIES) 
        $       


2)      Since FRIDAY is a special program and is intended only for use
        by system programers, it is distributed on SYSTEM:  instead of
        SYS:.

        $ RUN SYSTEM:FRIDAY

3)      FRIDAY writes its report to a file.  Since the report  is  132
        columns  wide, it is intended that the output be directed to a
        disk file and subsequently printed on the line printer.

        FRIDAY 3A(1), /H for Help       
        Output to file:  FRIDAY.OUT     

        NOTE:  Do not use .DAT as the file type since this will  cause
        the printed output to be garbled.

4)      FRIDAY  next  asks  if  the  report  should  contain   Monitor
        Statistics  and  Job  Statistics.   It is worthwhile to answer
        "YES" to both of these questions since data from both sections
        of the report are used in analyzing the system's performance.

        Print Monitor Statistics?  Y

        Print Job Summary?  Y
                                                                Page 2



5)      The final question concerns the reporting  interval.   A  good
        interval  is  about  2  to  3  minutes.   Since  FRIDAY itself
        requires some CPU time to generate  each  report,  setting  an
        interval of less than 2 minutes may cause FRIDAY to affect the
        load characteristics of the system enough to bias the results.
        Because  users  can  easily  switch  between  several programs
        during long reporting intervals, setting the  interval  longer
        than  3  minutes  makes  it  difficult to get accurate data on
        particular programs or jobs.  

        Time Period (MM:SS) 2:0 

6)      At this point, FRIDAY starts inserting the SNOOP Break  Points
        which it uses to gather the Data used to generate its reports.
        Since it has to look up the location of each  Break  Point  in
        the Monitor's symbol table, there will be a 10-30 second pause
        (depending on system load)  before  FRIDAY  starts  collecting
        data.   When  the  data  collection  phase has started, FRIDAY
        types out "WATCH IN OPERATION -- ".

7)      To stop FRIDAY, type:

                ^C      
                ^C      
                $CLOSE  
                $RESET  
                $       

        At this point, the output file can be printed.  An example  of
        the  report  produced by FRIDAY is attached to the end of this
        document.
                                                                Page 3



Definitions of terms used in the Report 


System Statistics:


USED    USED is the percentage of the interval during  which  CPU  was
        actually  executing  code  on  behalf  of user programs.  This
        includes CPU time spent in instruction  execution  within  the
        user  program  and  CPU time spent in EXEC mode executing JSYS
        calls.  This value is kept by the  system  and  includes  time
        spent by jobs that logged out during the interval.

IDLE    IDLE is the percentage of the interval during  which  the  CPU
        had  nothing to do.  This represents the amount of time during
        which there were absolutely no jobs demanding to be run by the
        CPU.   If  this  number is non-zero, the system is being under
        utilized.

SWPW    SWPW is the percentage of the interval during  which  the  CPU
        was  not  able to run any jobs because the pages needed by the
        runnable jobs were not in main memory.   The  term  "SWPW"  is
        somewhat  misleading  since  it  does  not distinguish between
        waits caused by pages being read in from a  disk  file  or  by
        pages  being read in from the "swapping space".  A rough break
        down of the time spent waiting for "Disk" reads versus  "Swap"
        reads  can  be obtained by comparing the sum of DKRD + DKWR to
        the sum of DMRD + DMWR.

SKED    SKED is the  percentage  of  the  interval  during  which  the
        TOPS-20 scheduler was running.

SUSE    SUSE is the sum of the run  time  percentages  accumulated  by
        each job listed in the report.  This value differs from "USED"
        only by the skew that builds up during the  time  that  FRIDAY
        takes  to  collect  all of the data about each job, and by the
        loss of data from jobs that logged out during the interval.

NCOR    NCOR is the  average  number  of  memory  garbage  collections
        performed by the monitor each minute during the last interval.

AJBL    AJBL is the average number of times per minute the system  was
        forced to adjust the balance set during the last interval.

NREM    NREM is the average number of times per minute the monitor had
        to  remove  a  process from the balance set before the process
        was  ready  to  be  removed.   This  number  becomes  non-zero
        whenever  there  are more jobs wanting to be run by the system
        than there is room in memory.  Whenever this situation arises,
        the  monitor  must  force runnable jobs to be removed from the
        balance set and subsequently swapped  out  to  make  room  for
        other  runnable  jobs  to be swapped into memory.  In general,
        whenever this number  goes  non-zero,  response  time  becomes
        longer.
                                                                Page 4


TRAP    TRAP is the percentage of the interval during  which  the  CPU
        was  responding to page faults.  This time is normally charged
        to the user, and  is  therefore  also  part  of  "USED"  time.
        However,  it  is  possible to make the system not include page
        fault time as a part of the users run  time.   In  this  case,
        "TRAP" time is not included in "USED" time.

NRUN    NRUN is the average number of processes demanding to be run at
        any point in time during the interval.  This number represents
        the CPU load on the system during the interval.  When NRUN  is
        greater  than  1.0,  the  user  programs  running  during  the
        interval experience an average elongation  of  execution  time
        (as  compared  to  execution  time  measured  on a stand alone
        system) of at least "NRUN" times longer.

NBAL    NBAL is the average number of processes  in  the  Balance  Set
        during  the  interval.   If this number is less than NRUN by a
        significant amount, it usually implies that there isn't enough
        memory to hold all runnable processes.

BSWT    BSWT is the average number of processes  in  the  Balance  Set
        that  are  waiting for a page to be read into main memory.  If
        NBAL - BSWT is less  than  one,  then  there  are  not  enough
        runnable  processes in memory to keep the CPU busy 100% of the
        time.  In this case, SWPW will increase.

DSKR    DSKR is the percentage of the processes in  Balance  Set  Wait
        state,  "BSWT",  that  are  waiting for a file page to be read
        into memory.

DSKW    DSKW is the percentage of the processes in  Balance  Set  Wait
        state,  "BSWT",  that are waiting for file pages to be written
        back to the disk.

SWPR    SWPR is the percentage of the processes  in  the  Balance  Set
        Wait  state, "BSWT", that are waiting for a page to be swapped
        into memory from the swapping area.

UPGS    UPGS is the sum of the average number of working set pages for
        each job in the balance set.

BGND    BGND is the  percentage  of  the  interval  during  which  the
        monitor  was  doing  background tasks.  The primary background
        task represented by this number is the task of moving terminal
        input  characters  from a system wide buffer to the individual
        terminal input buffers.  This also includes the time it  takes
        to echo terminal input characters.

TCOR    TCOR is the percentage of the interval that the monitor  spent
        garbage  collecting  memory.   The  garbage collection process
        requires the monitor to look at the age of each page in memory
        to  see  which  ones  haven't been referenced in a while.  The
        least recently used pages  become  the  prime  candidates  for
        being swapped out.
                                                                Page 5


CTXS    CTXS is the average number of context  switches  performed  by
        the  scheduler  per second.  A context switch is made whenever
        the scheduler decides to stop running one  process  and  start
        running  another  process.   This  happens  when  the  running
        process voluntarily blocks, or it faults on a page that is not
        in  memory, or when a higher priority process is ready to run.
        Since it takes CPU time to  perform  a  context  switch,  CTXS
        directly affects SKED.

FPGS    FPGS is the average number of physical memory pages  that  are
        currently  available  for  swapping  in  user  processes.  The
        monitor normally keeps between 20 and 100 pages on this queue.
        The  monitor  uses  these pages (and the rest of memory not in
        use by Balance Set processes) as a page cache.   For  example,
        if  a  process reenters the balance set after waking up from a
        blocked state and it still has some of its pages in memory  in
        the free page pool, then those pages are used directly without
        requiring any disk I/O.  It has been  demonstrated  that  this
        cache  plays  an important part in overall system performance.
        Therefore, if FPGS is very small, the system  performance  has
        most likely been degraded.

DMRD    DMRD is the number of reads per second that are  made  to  the
        swapping area.

DMWR    DMWR is the number of writes per second made to  the  swapping
        area.

DKRD    DKRD is the number of  reads  per  second  made  to  the  file
        system.

DKWR    DKWR is the number of writes  per  second  made  to  the  file
        system.

TTIN    TTIN is the number of terminal input characters  received  per
        second from all terminals on the system.

TTOU    TTOU is the average number of terminal characters  output  per
        second by all jobs on the system.

WAKE    WAKE is the number of process wakes per second.  The types  of
        wakes that fall into this category are:
              IPCF      
              ENQ       
              Terminal Input    
              Terminal Output   
              Process Termination       
              DISMS     
              TIMER     
              IIC       

TTCC    TTCC is the number of  terminal  interrupt  characters  (e.g.,
        control-C) typed per second.

TDIO    TDIO is the aggregate number of disk pages read or written per
                                                                Page 6


        second  to both the file system area and to the swapping area.
        The maximum rate for a single channel system is about 60 pages
        per  second.   The  maximum  rate  for a two channel system is
        about 100 pages per second.

Queue Distribution Percentage
        The TOPS-20 Monitor has five scheduler queues.   All  runnable
        jobs  are divided among these queues.  The first queue is only
        used by Job 0  and  by  jobs  in  the  special  high  priority
        category.   Normally the percentage of run time accumulated in
        this queue is small.

        The second and third queues are the  interactive  queues.   If
        the  sum  of  these two values is high, then there is a lot of
        interactive load on the system.

        The last two queues are the computational  queues.   Processes
        only  move  onto  these  queues if they have entered a compute
        bound phase.  If the sum of these two values is high, then the
        system load is primarily computational.

Load Averages
        The system  keeps  three  exponential  load  averages.   These
        values  represent the average load over the last 1 minute, the
        last 5 minutes, and the last 15 minutes.  These numbers can be
        used  to  estimate the expected elongation of the elapsed time
        required to run a program.  If the system load average  equals
        X,  then  the  approximate  elapsed  time  required  to run an
        additional program on the system is (1+X)*Y, where  Y  is  the
        stand alone elapsed time required to run this program.

        By comparing the three load averages,  it  can  be  determined
        whether the system load is rising or falling.

High Queue Averages
        These values are the components of each of  the  load  average
        values that are attributable to interactive jobs.

Low Queue Averages
        These values are the components of each of  the  load  average
        values  that  are attributable to compute bound jobs.  The sum
        of the high queue average and the low queue average equals the
        load average.




Job Statistics


JOB     JOB is the job number.

TTY     TTY is the number of the terminal that is being  used  by  the
        user  running  this  job.   "DET"  means  that  the job is not
        attached to a controlling terminal.
                                                                Page 7


USER    USER is the name of the user who is running this job.

PROGRAM This is the name of the program being run by the user of  this
        job.  Please note that the program name is obtained at the end
        of the interval.   Sometimes  the  data  gathered  during  the
        interval  reflects  the behavior of a program that was running
        just prior to the start up of the current program.

%RT     This is the percentage of  the  CPU  that  this  job  received
        during the interval.  The sum of the "%RT" values for all jobs
        equals "SUSE".

DEMD    This is the percentage of the interval that the job wanted  to
        run.   If  a  job  has  a "DEMD" of 100, that job is a compute
        bound job that is demanding to be run continuously.  Since  it
        takes  some  time for FRIDAY to snap shot the data, the "DEMD"
        values may  be  slightly  inaccurate,  but  the  average  over
        several intervals will be accurate.

USED    USED is the percentage  of  DEMD  time  that  this  job  spent
        executing.

GRDY    GRDY is the percentage of DEMD time that this job was runnable
        but  could  not  fit in the balance set.  A job must be in the
        balance set before it will be chosen by the scheduler to  run.
        The  most  common  cause  for  jobs to be on this list is that
        there is not enough memory to hold all runnable jobs.

BRDY    BRDY is the percentage of DEMD time that this job was  in  the
        balance set but was not being run.  Usually jobs in this state
        are waiting for their turn to use the CPU.

SWPR    SWPR is the percentage  of  DEMD  time  that  this  job  spent
        waiting  for pages to be swapped into memory from the swapping
        area.

DSKR    DSKR is the percentage  of  DEMD  time  that  this  job  spent
        waiting for file pages to be read into memory from the disk.

DSKW    DSKW is the percentage  of  DEMD  time  that  this  job  spent
        waiting for file pages to be written to the disk.

SWPI    SWPI is the percentage  of  DEMD  time  that  this  job  spent
        waiting  for its Process Storage Blocks (PSB), page table, and
        Job Storage Block (JSB) to be swapped in.  The Process Storage
        Blocks contain the definition of the job's working set and the
        job's PC.  These special pages must all be  in  memory  before
        the job can be run.

UDWT    UDWT is the percentage  of  DEMD  time  that  this  job  spent
        waiting  for  updates  to files, directories, Index Blocks, or
        the BIT table to be completed.  Time accumulates in this  area
        whenever  a  job  requests  that a specific file system action
        finish to completion.  For example, closing a  file  that  was
        open  for  writing  requires  that  all  pages  of the file be
                                                                Page 8


        written onto the disk and that the file name  appears  in  the
        directory  before  the  close function is complete.  While the
        job is waiting for these writes to complete, the job is in the
        "UDWT" state.

RPQW    RPQW is the percentage  of  DEMD  time  that  this  job  spent
        waiting  for  a  physical  memory page to become available for
        swapping into.  Usually if time is accumulating here, there is
        a shortage of memory on the system.  

OTHR    This last category is the percentage of DEMD  time  that  this
        job spent in any of the other wait states.

        The sum of USED + GRDY + BRDY + SWPR + DSKR + DSKW  +  SWPI  +
        UDWT  +  RPQW + OTHR for each job is equal to 100% of the DEMD
        time.

RESP    RESP  is  the  average  response  time  in  seconds  over  the
        interval.   The  time  for  each  response  is  defined as the
        elapsed time from when an event for which the job  is  waiting
        has  completed, to the time that the job goes back into a wait
        state after having responded to  the  event.   Responses  that
        require  more  than  2 seconds of CPU time time finish are not
        counted in this column.

NRSP    NRSP is the number of responses that the job  had  during  the
        interval.

SR      SR is the "Stretch Ratio"  for  each  response.   The  stretch
        ratio  is  obtained  by  dividing  the  elapsed  time  of each
        response  by  the  compute  time  required  to  satisfy   each
        response.

WSS     WSS is the average number of pages in the job's  working  set.
        WSS is the sum of the working set sizes of each process within
        the job.

        The  job  working  set  size  is  obtained  by   summing   the
        integration  of  the  instantaneous  process  working set size
        (FKNR) over all time that the process is not blocked  for  all
        processes  in  the  job.   The  average  process  size  is the
        integral divided by the accumulated time, i.e.

        WSS = SUM all processes (integral FKNR dt / T not blocked)

UPGS    UPGS is the average number of pages actually  in  memory  when
        the  job  is running.  Since the system "demand" pages in each
        page one at a time, this number is usually slightly less  than
        "WSS".

        The  job  used  pages   is   obtained   by   integrating   the
        instantaneous  process  assigned  pages  (FKWSP) over all time
        that the fork is in the balance set.  The average  used  pages
        is then the integral divided by the accumulated time, i.e.
                                                                Page 9


        UPGS = SUM all processes (integral FKWSP dt / T in balset)

SWPR    SWPR is the number of times that the process had to wait for a
        page  to  be read in from the swapping area.  This may be more
        than the actual number of pages swapped in.

DSKR    DSKR is the number of times that the process had to wait for a
        page  to  be  read in from the file system.  If the process is
        doing prefaulting, this number may be  less  than  the  actual
        number of pages read.

TPF     TPF is the average number of  milliseconds  that  it  took  to
        satisfy each page fault for this job during the interval.

IFA     IFA is the "Inter-Fault Average".  This value  represents  the
        average  compute  time in milliseconds between page faults for
        this job.  A large "IFA" means that the working  set  of  this
        job is very stable.




System Summary Values

DEMD    The summary value for the DEMD column is the sum of each  item
        in  the  column.   This represents the total demand put on the
        system over the interval.

USED - OTHR

        These values represent the average values over all jobs on the
        system.

RESP    The summary value for the RESP column is the average  response
        time of all responses in the interval.

NRSP    The summary value for the NRSP column is the total  number  of
        responses received during the interval.

SR      The summary value for the SR column  is  the  average  stretch
        ratio for the jobs on the system during the interval.

WSS     The arithmetic sum of the working  sets  of  all  jobs  active
        during  the  interval  is  computed and reported in the system
        summary WSS column.  This represents the total number of pages
        used during the interval.

        SYS WSS = SUM all jobs (JOB WSS)

UPGS    The summary value of the UPGS column is the sum of the working
        set  page integrals for all jobs divided by the interval time,
        i.e.

        SYS UPGS = SUM all jobs (integral FKWSP dt) / T interval
                                                               Page 10


SWPR    The SWPR column summary is the total number of swap reads done
        by  the  jobs  on  the system.  This does not include the swap
        reads required to swap in PSB pages.

DSKR    The DSKR column summary is the total number of disk reads done
        by the jobs on the system.

TPF     The TPF column summary is the average time required  to  fault
        in a page.

IFA     The IFA column summary is the average time between page faults
        for all jobs on the system.

TOTRC   TOTRC represents the total number  of  physical  memory  pages
        available after the resident monitor is locked down.

LOKPGS  LOKPGS is the current number of pages locked down  other  than
        the  resident  monitor  pages.  Out of this set of pages comes
        the terminal buffers, mag tape buffers, line printer  buffers,
        and  other  pages  locked  down  during  certain  file  system
        operations.

AVAIL MEM
        This is the difference between "TOTRC" and "LOKPGS".  This  is
        the actual number of pages available for use by user programs.

SHR PGS This is the average number  of  physical  memory  pages  being
        shared by more than one process.

NRUN MIN, MAX
        These values are the minimum and maximum of  "NRUN"  over  the
        interval.

SUMNR MIN, MAX
        These values are the minimum and maximum number  of  pages  in
        the balance set during the interval.

SYS MEM DMD
        The system  average  memory  demand  is  the  sum  of  the  NR
        integrals for all jobs divided by the interval time, i.e.

        SYS MEM DMD = SUM all jobs (integral FKNR dt) / T interval

SWAP RATIO
        The Swap Ratio is the system WSS  divided  by  the  amount  of
        available  main  memory.   This represents the amount by which
        main memory would have to be increased to avoid  any  swapping
        during the interval.

        SWAP RATIO = SYS WSS / AVAIL MEM

ACTIVE SWAP RATIO
        The active swap  ratio  is  the  system  average  core  demand
        divided   by  the  amount  of  available  main  memory.   This
        represents the amount by which main memory would  have  to  be
                                                               Page 11


        increased to hold all jobs wanting to run simultaneously.

        ACTIVE SWAP RATIO = SYS MEM DMD / AVAIL MEM

MEM UTILIZATION
        The core utilization if the system used pages divided  by  the
        amount  of  available  main  memory.   For  active swap ratios
        greater than 1, this indicates how well the monitor  is  doing
        in keeping core used.

        MEM UTILIZATION = SYS UPGS / AVAIL MEM
                                                               Page 12



How to Use Friday to Analyze System Performance

     1.  Look at the overall disk I/O rate (TDIO)

              For a 1 channel system the  maximum  rate  is  about  60
              pages  per  second.   For a 2 channel system the maximum
              rate is about 100 pages per second.  If "TDIO" is at  or
              near  the  maximum,  the  disk bandwidth may be a system
              bottleneck.

     2.  Look at the number of reads and writes to each disk unit.

              If  most  of  the  reads  and  writes  are  to  the  PS:
              structure, consider going to a two pack PS:.

              If PS:  is already a multiple pack structure,  check  to
              see if there are some I/O bound applications that can be
              moved onto a lightly loaded structure.

     3.  Look at "WSS" for each job

              If there is a job with a working set  greater  than  100
              pages, this job may be causing thrashing.  If the job is
              compute bound ("NRSP"=0), then look to see if there  are
              other  large jobs on the system with this job.  Only one
              job should be  greater  than  1/2  of  available  memory
              (AVAIL  MEM).   If more than one job is greater than 1/2
              of available memory, then schedule  these  jobs  to  run
              separately.

     4.  Look for highly interactive jobs.

              Scan the "NRSP" column looking for  jobs  that  wake  up
              frequently  (more often than once every 3 seconds).  For
              any job that meets this criteria, look to  see  if  that
              job  is also large.  A large interactive job puts a very
              heavy load on all of the system resources.

              Try to understand why a job is waking up frequently.  If
              the  rate  at  which  it  is  waking  can  be reduced by
              modifying  the  program,  this  would   improve   system
              throughput.
                                                               Page 13


SUMMARY at 10-Nov-78 15:11:11
  for an interval of   2:00  with 67  active jobs.

USED:  80.5   IDLE:   0.0   SWPW:   1.4   SKED:  15.7
SUSE:  77.8   NCOR:  1.51   AJBL: 58.71   NREM:     0
TRAP:  17.9   NRUN:   8.6   NBAL:   8.7   BSWT:   1.1
DSKR:  31.6   DSKW:  11.5   SWPR:  41.8   UPGS:  576.
BGND:   2.6   TCOR:   0.7   CTXS:  49.1   FPGS:  362.
DMRD:   9.4   DMWR:   7.0   DKRD:   5.8   DKWR:   4.5
TTIN:   7.6   TTOU:  516.   WAKE:  11.0   TTCC:  3.51
TDIO:  26.7      
QUEUE DISTRIBUTION PERCENTAGE:    0.08  12.72  17.40   2.11  48.05

LOAD AVERAGES:          8.84    8.52    7.95 
HIGH QUEUE AVERAGES:    3.05    2.97    3.17 
LOW QUEUE AVERAGES:     5.79    5.55    4.78 

JOB TTY USER        PROGRAM  %RT  DEMD USED GRDY BRDY SWPR DSKR DSKW SWPI UDWT RPQW OTHR  RESP NRSP SR   WSS  UPGS SWPR DSKR TPF IFA

  0 DET OPERATOR    SYSJOB   0.4   3.3 16.9      22.3 31.9 14.5  8.0  6.5                 0.12   34  6  12.7   9.6   31   11  43  15
  2 214 OPERATOR    OPLEAS   0.1   0.6 14.1       4.5 66.6           14.8                 0.13    5  7  10.2   7.9   11    0  40   8
  3 207 OPERATOR    ORION    0.0   0.5  4.8       2.2 50.8 26.2      16.0                 0.30    2 21  19.8   5.0    5    2  65   4
  4 217 OPERATOR    QUASAR   0.1   1.6 11.7       4.3 58.4 18.9       6.6                 0.24    8  9  28.8  15.9   25    3  52   8
  7   6 R.ACE       MD       3.6  32.4 14.0      16.5 30.0 18.9  6.3  2.0  6.2       6.1  0.28  198  7  29.6  27.3  223  118  55  15
 11 115 ACARLSON    PTYCON   0.1   1.0 19.0      32.9 19.5 22.9       5.7                 0.04   29  5  13.0  12.2    6    5  47  21
 13 220 OPERATOR    FAL20    0.1   1.5 23.6      76.4                                     0.01  141  4   9.6   8.6    0    0        
 15 DET OPERATOR    PERF     1.1   6.7 20.1       6.5      13.8 59.7                      0.62   13  5  43.4  40.9    0   24  46  67
 17 211 OPERATOR    LPTSPL   0.0   0.3  7.7           54.3           38.0                 0.20    2 13  12.6   4.3    8    0  27   3
 18 212 OPERATOR    LPTSPL   0.0   0.6 11.2       1.1 69.4           18.3                 0.14    5  9  15.8   6.2   16    0  30   4
 19 213 OPERATOR    BATCON   0.1   1.6 14.5      10.0 61.4  7.0  7.1                      0.19   10  7  25.0  20.9   36    3  33   7
 21  37 PTAYLOR     EXEC     0.1   0.1 51.5      48.5                                     0.01   12  2  16.0  15.8    0    0        
 22   7 R.ACE       MOUNT    0.0   0.3 15.9       3.2 69.4           11.6                 0.09    4  6   9.0   6.3    7    0  34   7
 27 132 LCAMPBELL   DMM      0.2   1.3 19.1      22.1 42.7      13.6       2.6            0.12   13  5  16.0  14.0   22    0  30  13
 29  42 HURLEY      FRIDAY   1.8   5.1 37.7      22.8 35.1  3.2       1.1                               62.4  61.8   56    4  38  38
 30  30 LEACHE      CROCK    0.7  24.6  3.4      96.6                                     0.33   90 30   8.0   6.0    0    0        
 36  20 ELFSTROM    EXEC     0.1   2.3 18.0      55.8 13.7 12.5                      0.1  0.15   12  4  21.8  19.3    4    5  79  54
 37 DET OSMAN       EXEC    10.4 189.9  8.0      85.0                                7.0  0.49  383114   4.0   2.2    0    0        
 39 121 BLOOD       EXEC     2.2   9.0 27.4      32.5 14.0 19.3  4.1  1.7  0.5       0.5  0.20   19  8  31.4  29.9   33   43  47  38
 42 225 BERKOWITZ   MACRO    9.8 102.5 10.0      87.2  2.8  0.1                                         66.0  60.1   10    2 2901022
 43 117 1EIBEN      EXEC     0.3   2.1 19.3      22.4 51.9  1.7  1.5  3.1                 0.09   29  5   8.4   6.2   21    1  60  21
 44  73 GRANT       EXEC     0.6   2.7 25.4       5.1 19.5 40.4  7.2  2.1            0.3  0.12   29  4  16.0  14.6   16   24  48  20
 45 222 MURPHY      MACRO   10.7  99.0 10.8      85.0  1.1  3.1                                         78.7  75.7   17    5 225 581
 53 107 LYONS       MM       0.2   0.4 23.7      76.3                                     0.02   24  4  18.0  18.0    0    0        
 56 231 ACARLSON    CREF    10.8  87.5 13.9      63.4  2.8 16.2  3.5  0.0  0.2       0.0  0.15   11  4  62.1  53.5   40  171  94  68
 58 110 BELANGER    LIFE     7.1  39.1 18.9      81.1                                     0.51   93  5  18.4  15.4    0    0        
 60  67 DBELL       FILDDT   0.7   8.5 14.6       7.8 74.7  2.1       0.8                 0.44   23  7  47.7  46.6  162    3  47   8
 63 150 CRUGNOLA    EDIT     0.0   0.1 50.4           49.6                                0.13    1  2  14.1  13.0    3    0  21  21
 65  15 MILLER      SYSTAT   1.6   9.3 20.9       8.5 62.9  5.3  1.2  1.3                 0.44   24  5  44.4  41.5  140   10  50  15
 67 DET OSMAN       SDDT    10.2 254.4  5.6      94.4                                0.0 19.14   14***   4.0   0.0    0    0        
 71  46 OSMAN       TV       4.1  21.8 21.9      53.6  9.5  7.8  6.3  0.3  0.5       0.1  0.15  190  5  38.5  34.5   61   47  41  53
 74 103 HARAMUNDANISMM       0.0   0.4  7.2       0.6 48.2 23.8      20.1                 0.24    2 14   8.5   5.8    7    2  38   3
 76  70 TEEGARDEN   EXEC     0.2   0.3 20.7      79.3                                     0.02   24  5  12.0  12.0    0    0        

        System summary           910.7 10.2      78.4  4.5  3.4  1.3  0.2  0.3       1.7  0.47 1444 18  826. 230.5  960  483  59  77
                                                               Page 14



TOTRC:  1483   LOKPGS:    94   SHR PGS:   217   AVAIL MEM:  1389
NRUN MIN,MAX:       5   17
SUMNR MIN,MAX:    479  820
SYS MEM DMD =                             265.3
SWAP RATIO (SUM WSS / AV MEM) =             0.59
ACTIVE SWAP RATIO (DMD/AVMEM) =             0.19
MEM UTILIZATION ((UPGS+SHRPGS)/AVMEM) =     0.32
AV WS SIZE =                               29.13
AV CPU TIME (MS) PER INTERACTION =         25.60
THINK TIME (SEC) PER INTERACTION =          2.02

                        DISK I/O

CHN,UNIT        SEEKS           READS           WRITES
0,6             10              18              25              LANG #0
0,7             828             822             637             PS #1
1,0             737             854             595             PS #0
1,1                             1                               REL3 #0
1,2                                             
2,3             17              21              8               MISC #0
2,4             91              111             115             SNARK #0
2,5                             1               
+---------------+
! d i g i t a l !   I N T E R O F F I C E    M E M O R A N D U M
+---------------+




To:	Rick Ace	MR1-2/E37	Date: 16-Aug-79
	Paul Baker	MR1-2/E78	From: Kevin G. Wallace
	David Bell	MR1-2/E37	Dept: LCG Software Engineering
	Sumner Blount	MR1-2/E37	DTN (231-5076)
	Eliot Brown	MR1-2/E37	Loc: MR1-2/E37
	Larry Campbell	MR1-2/E37	File: [DOC-SPECS]WATDAT.MEM
	Mimi Chen	MR1-2/E37	Distributed:
	Carolin Combs	MR1-2/E37	Reviewed:
	Alan Denizen	BU/DZ
	Peter Donahue	BU/D2
	Fred Engel	MR1-2/E37
	Clair Grant	MR1-2/E37
	Dale Gunn	MR2-2/E37
	Judy Hall	MR1-2/E37
	Dick Helliwell	MR1-2/E47
	Gail Holland	MR1-2/E37
	Donaleen Konn	MR1-2/E85
	Dave Kovalcin	MR1-1/A86
	David Latta	MR1-2/E37
	Gene Leach	MR1-2/E37
	Josephine McCarthy MR1-2/E37
	Dave McClure	MR1-2/E85
	Kevin McElmoyle	MR1-2/E37
	Arnold Miller	MR1-2/E37
	Dan Murphy	MR1-2/E37
	Laura Neff	MR1-2/S43
	Eric Osman	MR1-2/E37
	Susan Porada	MR1-2/E37
	Ed Prentice	MR1-2/E68
	Meg Reed	MR1-2/E37
	Kathy Richer	MR1-2/E37
	Larry Samberg	MR1-2/E37
	Connie Sartini	PK3-2/M88
	Norm Valentine	MR1-1/M42


Subject:  Record Output for the WATCH Program


The following  document is  a description  of the  new  data
record output  feature  of  the  WATCH  program.   This  new
feature  will  be  discussed  at  the  Monitor  Meeting   on
20-Aug-79. 



                   RECORD OUTPUT FOR WATCH




     This document describes a  new  feature  added  to  the
WATCH  program,  such  that  WATCH will output data records.
The work in implementing this  new  feature,  and  preparing
this  document,  was  done  by  Kevin  G.   Wallace, a Co-op
student from MIT.   The  present  WATCH  program  outputs  a
listing  of  the  system  and  user statistics which is only
useful in the visual  sense.   Although  some  persons  have
written   programs   (in   languages   such  as  SNOBOL)  to
post-process  these  listing  files,  by  having  the  WATCH
program,  itself, output its data in a more useful form, the
need for post-processing programs is eliminated, the data is
more easily accessible to high level languages (eg.  FORTRAN
& COBOL), and the data is  more  accessible  to  statistical
packages, such as SPSS and/or SCSS.

     The present WATCH output presents two  major  obstacles
to  processing of its data.  The output is of varying length
or size, and much unnecessary textual data is output.   This
document  describes  record  output  for  WATCH  that  would
structure the  data  output  by  WATCH,  and  eliminate  the
unnecessary   textual  data  output  by  the  present  WATCH
program.  Note that the proposed new version of  WATCH  will
still have the capability to output the listing files output
by the present WATCH.

     This document assumes reasonable knowledge of WATCH and
having  read  WATCH-NEW.HLP (or WATCH.NEW-MEM or WATCH.HLP),
or the equivalent thereof.  All material  in  this  document
refers  to the WATCH program running in the mode in which it
outputs data records.

     There are six different record types,  at  the  present
time.   The motivation for different record types originates
from two sources.  First, for some record types  there  will
be  an  unknown  number  of  occurences at the time the data
records  are  output.   Second,  different  answers  to  the
initial  WATCH  questions  cause  different  combinations of
records to be output.



                Different Record Types


1. System Stats (System & Queues)
2. Load Averages
3. Expanded Per-Job
4. Normal Per-Job
5. Expanded Stats ( Dir Cache & Sys Util & Disk I/O)
6. Tune Mode
RECORD OUTPUT FOR WATCH                               Page 2


     As an example of the latter, if a user  specifies  that
he/she  would  like  no  Monitor Stats, and the Job Summary,
then a Load Averages Record is output,  and  Normal  Per-Job
records  are  output.  However if the user had responded yes
to the Monitor Stats question and  no  to  the  Job  Summary
question,  then a System Stats record would be output, and a
Load Averages record would be output.

     The mapping from the nine different  display  sections,
as mentioned in WATCH-NEW.HLP, to the new record types is as
follows.  The Heading Section appears in the  initial  items
of  every  record  type.   The  System Statistics Section is
found in the System Stats record.  The Load Averages Section
is  found  in  the record of the same name, and likewise for
the Normal Per-Job Information Section, the Expanded Per-Job
Information   Section,  and  the  Tune  Mode  Section.   The
Directory Cache Section, the System Utilization Section, and
the  Disk  I/O  Section  are  all combined into the Expanded
Stats record.
RECORD OUTPUT FOR WATCH                               Page 3


                     Questions From WATCH




     At the present time WATCH prompts the user  with  three
questions  about  how  much  data  should  be output.  These
questions are:


Question #1     Output to file:         <filename>
Question #2     Monitor Stats?          YES, NO, ALL
Question #3     Job Summary?            YES, NO
Question #4     Tune Mode?              YES, NO
Question #5     Time period (MM:SS):    <interval>


The possible answers to these  questions  are  listed  after
each  question.   Two  new  questions  are  to be asked as a
result  of  the  new  record  output,  not  necessarily   as
questions six and seven, as shown here.


Question #6     Would you like to output data records? (Y/N)
YES, NO
Question #7     Output file for data records:   <filename>


If data records are to be output, the records  output,  from
all  the  different legal possible combinations of questions
and answers, are listed below.
RECORD OUTPUT FOR WATCH                               Page 4


                        Records Output



From ALL Monitor Stats
        1. System Stats
        2. Load Averages
        3. Expanded Per-Job  (Several Occurences)
        4. Expanded Stats


From NO Monitor Stats, NO Job Summary, NO Tune Mode
        1. Load Averages


From NO Monitor Stats, NO Job Summary, YES for Tune Mode
        1. Tune Mode


From NO Monitor Stats, YES for Job Summary
        1. Load Averages
        2. Normal Per-Job  (Several Occurences)


From YES for Monitor Stats, NO Job Summary
        1. System Stats
        2. Load Averages


From YES Monitor Stats, YES for Job Summary
        1. System Stats
        2. Load Averages
        3. Normal Per-Job  (Several Occurences)
RECORD OUTPUT FOR WATCH                               Page 5


     The data file is written in seven bit ASCII  bytes.   A
carriage-return  and a line-feed are appended to all records
output.

     The following pages contain more  specific  information
on  each record type.  A few definitions are in order, here.
Lengths, as specified in the  record  definitions,  are  the
number  of seven bit ASCII bytes, as the output data file is
written in seven bit ASCII bytes.  COBOL pictures have  been
used  to  describe  the  content  of each record, because of
their clarity.  In these record descriptions, 9 represents a
numeric  constant of one digit in length.  9(3) represents a
integer of length three and is equivalent  to  999.   9(4).9
represents a floating point number with a four digit integer
part and a one digit fraction part.  In all  records  output
by  WATCH,  the  decimal  point  is output.  X represents an
alphanumeric constant of length  one.   X(5)  represents  an
alphanumberic  constant of length five, and is equivalent to
XXXXX.

     The first five entries of all occurences of all  record
types  are  the  same.   They are the Entry Record Type, the
Record Sequence Number, the date and time of the sample, the
duration  of  the  sample  or interval (in seconds), and the
number of jobs during the interval.  The Entry  Record  Type
is  a two digit number from "00" to "99", that specifies the
record type.  The Record  Sequence  Number  is  the  present
count  of  the  number  of records in a Record Group.  As an
example, when Normal Per Job records are output, each Normal
Per-Job  Record has a record type of "05".  The first Normal
Per-Job Record output has a Record Sequence Number of "001".
Each  succesive  Normal Per-Job Record has a Record Sequence
Number that is one greater than the previous Normal  Per-Job
Record.   This  Sequence  continues  until  a  record  of  a
different type is output, at which time the Record  Sequence
Number  is  reset to "001".  Note that these Record Sequence
Numbers are only valid within  one  instance  or  sample  of
WATCH output.
RECORD OUTPUT FOR WATCH                               Page 6


                   System Statistics Record



     The System Statistics Record contains information about
system  parameters.  The last entries of this Record are the
Queue Distribution Percentages.  At  the  present  time  six
values are output.  A maximum of ten entries in this section
is allowed.

     A problem occurred in outputting this  record  in  that
some  of  the  pictures  for  output were data dependent, as
written in the original WATCH program.   Therefore  to  make
the  implementation, for outputting records easier, clearer,
and cleaner, all data items in  the  System  Statics  Record
will be output as 9(4).99.



SUMMARY at  6-Aug-79 09:28:23
  for an interval of   0:11.3  with  52  active jobs.

USED:  88.0   IDLE:   0.0   SWPW:   0.7   SKED:   8.9
SUSE:  88.0   TCOR:   0.4   FILW:   0.4   BGND:   2.0
NTRP:  16.2   NCOR:  5.69   AJBL: 56.87   NREM:     0
TRAP:   2.1   NRUN:   2.9   NBAL:   2.9   NWSM:  50.0
BSWT:   0.5   DSKR:  51.8   DSKW:  13.1   SWPR:  26.6
NLOD: 28.43   CTXS:  39.6   UPGS: 1993.   FPGS:  46.7
DMRD:   2.7   DMWR:  11.3   DKRD:   4.9   DKWR:   1.0
TTIN:  12.3   TTOU:  672.   WAKE:  19.1   TTCC: 17.06
TDIO:  20.0   RPQS:   4.6   GCCW:  18.0   XGCW:     0
KNOB:    11      
QUEUE DISTRIBUTION PERCENTAGE:    0.00  15.12  14.75   0.25 
 0.00  52.27


 0100108/06/79 09:28:2300011.30520088.000000.000000.700008.90
 0088.000000.400000.400002.000016.200005.690056.870000.000002
 .100002.900002.900050.000000.500051.800013.100026.600028.430
 039.601993.500046.700002.700011.300004.900001.000012.300672.
 600019.100017.060020.000004.600018.000000.00000110000.000015
 .120014.750000.250000.000052.270000.000000.000000.000000.000
 6


       Item                   Length  Picture          Value

 1. Record Type                  2      99              "01"
 2. Record Sequence Number       3      999            "001"
 3. Date & Time                 17      X(17)
        (MM/DD/YY HH:MM:SS)
 4. Interval                     7      9(5).9
 5. Number of Jobs               3      999
 6. USED                         7      9(4).99
 7. IDLE                         7      9(4).99
RECORD OUTPUT FOR WATCH                               Page 7


 8. SWPW                         7      9(4).99
 9. SKED                         7      9(4).99
10. SUSE                         7      9(4).99
11. TCOR                         7      9(4).99
12. FILW                         7      9(4).99
13. BGND                         7      9(4).99
14. NTRP                         7      9(4).99
15. NCOR                         7      9(4).99
16. AJBL                         7      9(4).99
17. NREM                         7      9(4).99
18. TRAP                         7      9(4).99
19. NRUN                         7      9(4).99
20. NBAL                         7      9(4).99
21. NWSM                         7      9(4).99
22. BSWT                         7      9(4).99
23. DSKR                         7      9(4).99
24. DSKW                         7      9(4).99
25. SWPR                         7      9(4).99
26. NLOD                         7      9(4).99
27. CTXS                         7      9(4).99
28. UPGS                         7      9(4).99
29. FPGS                         7      9(4).99
30. DMRD                         7      9(4).99
31. DMWR                         7      9(4).99
32. DKRD                         7      9(4).99
33. DKWR                         7      9(4).99
34. TTIN                         7      9(4).99
35. TTOU                         7      9(4).99
36. WAKE                         7      9(4).99
37. TTCC                         7      9(4).99
38. TDIO                         7      9(4).99
39. RPQS                         7      9(4).99
40. GCCW                         7      9(4).99
41. XGCW                         7      9(4).99
42. KNOB                         5      9(5)
43. Queue Distribution %'s      70

        Max 10 entries; 1 entry  7      9(4).99

44. Number of Queue Dist Entries 2      99

                               ---
                               361
RECORD OUTPUT FOR WATCH                               Page 8


                     Load Averages Record



     The Load Average Record contains information about  the
System   Load   Averages,  Queue  Averages  and  Class  Load
Averages.  At the  present  time  there  are  three  classes
(entries) of data for the Class Load Averages section.  This
record will support a maximum of thirty-two entries.


LOAD AVERAGES:          3.06    2.74    2.38 
HIGH QUEUE AVERAGES:    1.74    1.94    1.67 
LOW QUEUE AVERAGES:     1.32    0.80    0.71 

CLASS LOAD AVERAGES   
CLA   SHR    UTIL 

    0   80.00   67.73    2.59    2.35    2.04 
    1   15.00   32.27    2.84    2.34    2.01 
    2    5.00    0.00    0.00    0.00    0.00 


0200108/06/79 09:28:2300011.30520003.060002.740002.380001.74
0001.940001.670001.320000.800000.71000000080.000067.730002.5
90002.350002.04000010015.000032.270002.840002.340002.0100002
0005.000000.000000.000000.000000.00000000000.000000.000000.0
00000.000000.00000000000.000000.000000.000000.000000.0000000
0000.000000.000000.000000.000000.00000000000.000000.000000.0
00000.000000.00000000000.000000.000000.000000.000000.0000000
0000.000000.000000.000000.000000.00000000000.000000.000000.0
00000.000000.00000000000.000000.000000.000000.000000.0000000
0000.000000.000000.000000.000000.00000000000.000000.000000.0
00000.000000.00000000000.000000.000000.000000.000000.0000000
0000.000000.000000.000000.000000.00000000000.000000.000000.0
00000.000000.00000000000.000000.000000.000000.000000.0000000
0000.000000.000000.000000.000000.00000000000.000000.000000.0
00000.000000.00000000000.000000.000000.000000.000000.0000000
0000.000000.000000.000000.000000.00000000000.000000.000000.0
00000.000000.00000000000.000000.000000.000000.000000.0000000
0000.000000.000000.000000.000000.00000000000.000000.000000.0
00000.000000.00000000000.000000.000000.000000.000000.0000000
0000.000000.000000.000000.000000.00000000000.000000.000000.0
00000.000000.00000000000.000000.000000.000000.000000.0000000
0000.000000.000000.000000.000000.00000000000.000000.000000.0
00000.000000.00000000000.000000.000000.000000.000000.0003


       Item                   Length  Picture          Value

 1. Record Type                  2      99              "02"
 2. Record Sequence Number       3      999            "001"
 3. Date & Time                 17      X(17)
        (MM/DD/YY HH:MM:SS)
 4. Interval                     7      9(5).9
RECORD OUTPUT FOR WATCH                               Page 9


 5. Number of Jobs               3      999
 6. Load Averages (3 values)    21

        Each Value               7      9(4).99

 7. High Queue Avgs (3 values)  21

        Each Value               7      9(4).99

 8. Low Queue Avgs (3 values)   21

        Each Value               7      9(4).99

 9. Class Load Averages        672

        Max 32 entires; 1 entry 40

        a. Class Number          5      9(5)
        b. Share                 7      9(4).99
        c. Utilization           7      9(4).99
        d. Load Avgs (3 values) 21

                Each Value       7      9(4).99

10. Number of Class Load Avg.    2      99

                              ----
                              1377
RECORD OUTPUT FOR WATCH                              Page 10


                   Expanded Per-Job Record



     The Expanded Per-Job Record contains information  about
each job, obtained from SNOOPing.  Usually there are several
occurences of this record when a WATCH sample is taken.  The
last Expanded Per-Job Record output for a specific sample is
one with a user named SYSTEM.  This record contains all  the
system  totals  for  the  previous  Expanded Per-Job Records
output.

  9 216 WALLACE     GWATCH  11.0  33.0 32.8  4.3 48.4  9.1  
5.4                173.6   1    1  0.43 15  142.0   44.3    
7    3  53 122
 24 174 WALLACE     PTYCON   6.3  22.2 25.9      74.1       
                    93.6   0   42  0.06  4   13.0   13.0    
0    0        

0300508/06/79 09:28:2300011.3052009216WALLACE             GW
ATCH11.00033.0032.8004.3048.4009.1005.4000.0000.0000.00173.6
000100001000.4301500142.000044.3000070000300530122
0301208/06/79 09:28:2300011.3052024174WALLACE             PT
YCON06.30022.2025.9000.0074.1000.0000.0000.0000.0000.00093.6
000000042000.0600400013.000013.0000000000000000000




        System summary           279.5 31.5  5.1 50.4  4.1  
6.9  2.0          2843.2   4  192  0.09  5 1228.0  190.3   2
9   39  50 145

0302008/06/79 09:28:2300011.3052999777SYSTEM                
    00.00279.5031.5005.1050.4004.1006.9002.0000.0000.02843.2
000400192000.0900501228.000190.3000290003900500145



       Item                   Length  Picture          Value

 1. Record Type                  2      99              "03"
 2. Record Sequence Number       3      999    "001" - "999"
 3. Date & Time                 17      X(17)
        (MM/DD/YY HH:MM:SS)
 4. Interval                     7      9(5).9
 5. Number of Jobs               3      999
 6. Job Number                   3      9(3)
 7. TTY Number                   3      9(3)
 8. User Name                   20      X(20)
 9. Program Name                 6      X(6)
10. %RT                          4      99.9
11. DEMD                         6      9(4).9
12. USED                         5      999.9
13. GRDY                         5      999.9
RECORD OUTPUT FOR WATCH                              Page 11


14. BRDY                         5      999.9
15. SWPR                         5      999.9
16. DSKR                         5      999.9
17. DSKW                         5      999.9
18. RPQW                         5      999.9
19. OTHR                         5      999.9
20. IMEM                         6      9(4).9
21. NLD                          4      9(4)
22. NRSP                         5      9(5)
23. RESP                         6      999.99
24. SR                           3      999
25. WSS                          7      9(5).9
26. UPGS                         7      9(5).9
27. SWPR                         5      9(5)
28. DSKR                         5      9(5)
29. TPF                          4      9999
30. IFA                          4      9999
                               ---
                               170
RECORD OUTPUT FOR WATCH                              Page 12


                    Normal Per-Job Record



     The Normal Per-Job Record  contains  information  about
each  job,  obtained  from GETAB.  Usually there are several
occurences of this record type when a WATCH sample is taken.


  9 216 WALLACE     GWATCH     1.79  21.7  12.77   1.45
 24 174 WALLACE     PTYCON     0.22   2.7   2.70   1.45

0400408/06/79 09:29:4300008.3054009216WALLACE             GW
ATCH0001.7921.70012.770001.45
0400808/06/79 09:29:4300008.3054024174WALLACE             PT
YCON0000.2202.70002.700001.45


       Item                   Length  Picture          Value

 1. Record Type                  2      99              "04"
 2. Record Sequence Number       3      999    "001" - "999"
 3. Date & Time                 17      X(17)
        (MM/DD/YY HH:MM:SS)
 4. Interval                     7      9(5).9
 5. Number of Jobs               3      999
 6. Job Number                   3      999
 7. TTY Number (777 = DET)       3      999
 8. User Name                   20      X(20)
 9. Program Name                 6      X(6)
10. DELTA RT                     7      9(4).99
11. %RT                          4      99.9
12. JU                           7      9(4).99
13. CSH                          7      9(4).99
                                --
                                89
RECORD OUTPUT FOR WATCH                              Page 13


                    Expanded Stats Record



     The Expanded Stats Record  contains  extra  information
about  the system.  The last entries of this Record are Disk
I/O statistics.  An entry is provided for each disk unit  of
each structure.  A maximum of 15 entries is allowed.



Directory Cache hits: 10
Directory Cache Misses - Cache Full: 0
Directory Cache Misses - New Entry Added: 8

TOTRC:  1992   LOKPGS:   107   SHR PGS:   245   AVAIL MEM:  1885
NRUN MIN,MAX:       1   11
SUMNR MIN,MAX:   1958 2058
NRPLQ MIN,MAX:     18  113
SYS MEM DMD =                             204.4
SWAP RATIO (SUM WSS / AV MEM) =             0.65
ACTIVE SWAP RATIO (DMD/AVMEM) =             0.11
MEM UTILIZATION ((UPGS+SHRPGS)/AVMEM) =     0.23
AV WS SIZE =                               36.56
AV CPU TIME (MS) PER INTERACTION =         19.04
THINK TIME (SEC) PER INTERACTION =          0.96

                        DISK I/O

CHN,UNIT        SEEKS           READS           WRITES
 0, 6               44              28              73          PS # 1
 0, 7                2               7               2          LANG # 0
 1, 0                                           
 1, 1               48              32              55          PS # 0
 1, 2                1               7                          PMH # 0
 2, 3                                                           PACKAG # 0
 2, 4                4               6                          MISC # 0
 2, 5                                1                          SNARK # 0
 5, 1                                           

 0500108/06/79 09:28:2300011.30520000100000000000080199200107
 002450188500001000110195802058000180011300204.400000.6500000
 .1100000.2300036.5600019.0400000.960006000044000028000073PS 
        010007000002000007000002LANG      0001000000000000000
 00000          000101000048000032000055PS        00010200000
 1000007000000PMH       000203000000000000000000PACKAG    000
 204000004000006000000MISC      000205000000000001000000SNARK
      000501000000000000000000          000000000000000000000
 000          000000000000000000000000          0000000000000
 00000000000          000000000000000000000000          00000
 0000000000000000000          000000000000000000000000       
    0009
RECORD OUTPUT FOR WATCH                              Page 14


       Item                   Length  Picture          Value

 1. Record Type                  2      99              "05"
 2. Record Sequence Number       3      999            "001"
 3. Date & Time                 17      X(17)
        (MM/DD/YY HH:MM:SS)
 4. Interval                     7      9(5).9
 5. Number of Jobs               3      999
 6. Dir Cache Hits               6      9(6)
 7. Dir Cache Misses - Full      6      9(6)
 8. Dir Cache Misses - New Entry 6      9(6)
 9. TOTRC                        5      9(5)
10. LOKPGS                       5      9(5)
11. SHR PGS                      5      9(5)
12. AVAIL MEM                    5      9(5)
13. NRUN MIN                     5      9(5)
14. NRUN MAX                     5      9(5)
15. SUMNR MIN                    5      9(5)
16. SUMNR MAX                    5      9(5)
17. NRPLQ MIN                    5      9(5)
18. NRPLQ MAX                    5      9(5)
19. SYS MEM DMD                  7      9(5).9
20. SWAP RATIO                   8      9(5).99
21. ACTIVE SWAP RATIO            8      9(5).99
22. MEM UTILIZATION              8      9(5).99
23. AV WS SIZE                   8      9(5).99
24. AV CPU TIME                  8      9(5).99
25. THINK TIME                   8      9(5).99
26. Disk I/O                   510

        Max 15 entries; 1 entry 32

        a. Channel               2      99
        b. Unit                  2      99
        c. Seeks                 6      9(6)
        d. Reads                 6      9(6)
        e. Writes                6      9(6)
        f. Name                 10      X(10)
        g. Number                2      99


27. Number of Disk I/O entries   2      99

                               ---
                               667
RECORD OUTPUT FOR WATCH                              Page 15


                       Tune Mode Record



     The Tune Mode Record contains a quick summary of system
information.


  77.1  10.0   7.7  44.4  16.6  42.5   2.3  47.7     0 35.4 
     31.5 11.6 20.1  1.3          1933.3   0  137  0.08  2

0600108/06/79 09:31:1400009.10540077.100010.000007.700044.40
0016.600042.500002.300047.700000.00035.4000.0031.5011.6020.1
001.3000.0000.01933.3000000137000.08002


       Item                   Length  Picture          Value

 1. Record Type                  2      99              "06"
 2. Record Sequence Number       3      999            "001"
 3. Date & Time                 17      X(17)
        (MM/DD/YY HH:MM:SS)
 4. Interval                     7      9(5).9
 5. Number of Jobs               3      999
 6. USED                         7      9(4).99
 7. SWPW                         7      9(4).99
 8. SKED                         7      9(4).99
 9. CTXS                         7      9(4).99
10. WAKE                         7      9(4).99
11. TDIO                         7      9(4).99
12. NRUN                         7      9(4).99
13. NWSM                         7      9(4).99
14. NLOD                         7      9(4).99
15. USED                         5      9(3).9
16. GRDY                         5      9(3).9
17. BRDY                         5      9(3).9
18. SWPR                         5      9(3).9
19. DSKR                         5      9(3).9
20. DSKW                         5      9(3).9
21. RPQW                         5      9(3).9
22. OTHR                         5      9(3).9
23. IMEM                         6      9(4).9
24. NLD                          4      9(4)
25. NRSP                         5      9(5)
26. RESP                         6      9(3).99
27. SR                           3      999

                               ---
                               159


[End of Document]
The following  are slides  used in  a presentation  on  data
record output by WATCH.
                    Questions From WATCH



Question #1     Output to file:         <filename>

Question #2     Monitor Stats?          YES, NO, ALL

Question #3     Job Summary?            YES, NO

Question #4     Tune Mode?              YES, NO



                       New Questions


Question #A     Would you like to output data records? (Y/N)
                YES, NO

Question #B     Output file for data records:   <filename>
               Different Record Types


1. System Stats (System & Queues)

2. Load Averages

3. Expanded Per-Job

4. Normal Per-Job

5. Expanded Stats ( Dir Cache & Sys Util & Disk I/O)

6. Tune Mode
                       Records Output



From ALL Monitor Stats

        1. System Stats

        2. Load Averages

        3. Expanded Stats

        4. Expanded Per-Job  (Several Occurences)




From NO Monitor Stats, NO Job Summary, NO Tune Mode

        1. Load Averages




From NO Monitor Stats, NO Job Summary, YES for Tune Mode

        1. Tune Mode




From NO Monitor Stats, YES for Job Summary

        1. Load Averages

        2. Normal Per-Job  (Several Occurences)




From YES for Monitor Stats, NO Job Summary

        1. System Stats

        2. Load Averages




From YES Monitor Stats, YES for Job Summary

        1. System Stats

        2. Load Averages

        3. Normal Per-Job  (Several Occurences)
                   Typical File Structure

+----------------------------------------------------------+
|Sample 1                                                  |
|                       System Stats                       |
|                                                          |
+----------------------------------------------------------+
|Sample 1                                                  |
|                      Load  Averages                      |
|                                                          |
+----------------------------------------------------------+
|Sample 1                                                  |
|                     Normal Per-Job #1                    |
|                                                          |
+----------------------------------------------------------+
|Sample 1                                                  |
|                     Normal Per-Job #2                    |
|                                                          |
+----------------------------------------------------------+
|Sample 1                                                  |
|                     Normal Per-Job #3                    |
|                                                          |
+----------------------------------------------------------+
|Sample 1                    .                             |
|                            .                             |
|                            .                             |
+----------------------------------------------------------+
|Sample 1                    .                             |
|                            .                             |
|                            .                             |
+----------------------------------------------------------+
|Sample 2                                                  |
|                       System Stats                       |
|                                                          |
+----------------------------------------------------------+
|Sample 2                                                  |
|                      Load  Averages                      |
|                                                          |
+----------------------------------------------------------+
|Sample 2                                                  |
|                     Normal Per-Job #1                    |
|                                                          |
+----------------------------------------------------------+
|Sample 2                                                  |
|                     Normal Per-Job #2                    |
|                                                          |
+----------------------------------------------------------+
|Sample 2                                                  |
|                     Normal Per-Job #3                    |
|                                                          |
+----------------------------------------------------------+
|Sample 2                    .                             |
|                            .                             |
|                            .                             |
+----------------------------------------------------------+
|Sample 2                    .                             |
|                            .                             |
|                            .                             |
+----------------------------------------------------------+
                   Expanded Stats Record


                    Regular WATCH Output

Directory Cache hits: 10
Directory Cache Misses - Cache Full: 0
Directory Cache Misses - New Entry Added: 8

TOTRC:  1992   LOKPGS:   107   SHR PGS:   245   AVAIL MEM:  1885
NRUN MIN,MAX:       1   11
SUMNR MIN,MAX:   1958 2058
NRPLQ MIN,MAX:     18  113
SYS MEM DMD =                             204.4
SWAP RATIO (SUM WSS / AV MEM) =             0.65
ACTIVE SWAP RATIO (DMD/AVMEM) =             0.11
MEM UTILIZATION ((UPGS+SHRPGS)/AVMEM) =     0.23
AV WS SIZE =                               36.56
AV CPU TIME (MS) PER INTERACTION =         19.04
THINK TIME (SEC) PER INTERACTION =          0.96

                        DISK I/O
CHN,UNIT        SEEKS           READS           WRITES
  0, 6             44              28               73          PS # 1
  0, 7              2               7                2          LANG # 0
  1, 0                                           
  1, 1             48              32               55          PS # 0
  1, 2              1               7                           PMH # 0
  2, 3                                                          PACKAG # 0
  2, 4              4               6                           MISC # 0
  2, 5                              1                           SNARK # 0
  5, 1                                           



                      New WATCH Output

 0500108/06/79 09:28:2300011.30520000100000000000080199200107
 002450188500001000110195802058000180011300204.400000.6500000
 .1100000.2300036.5600019.0400000.960006000044000028000073PS 
        010007000002000007000002LANG      0001000000000000000
 00000          000101000048000032000055PS        00010200000
 1000007000000PMH       000203000000000000000000PACKAG    000
 204000004000006000000MISC      000205000000000001000000SNARK
      000501000000000000000000          000000000000000000000
 000          000000000000000000000000          0000000000000
 00000000000          000000000000000000000000          00000
 0000000000000000000          000000000000000000000000       
    0009
                   Expanded Stats Record


       Item                   Length  Picture          Value

 1. Record Type                  2      99              "05"
 2. Record Sequence Number       3      999            "001"
 3. Date & Time                 17      X(17)
        (MM/DD/YY HH:MM:SS)
 4. Interval                     7      9(5).9
 5. Number of Jobs               3      999
 6. Dir Cache Hits               6      9(6)
 7. Dir Cache Misses - Full      6      9(6)
 8. Dir Cache Misses - New Entry 6      9(6)
 9. TOTRC                        5      9(5)
10. LOKPGS                       5      9(5)
11. SHR PGS                      5      9(5)
12. AVAIL MEM                    5      9(5)
13. NRUN MIN                     5      9(5)
14. NRUN MAX                     5      9(5)
15. SUMNR MIN                    5      9(5)
16. SUMNR MAX                    5      9(5)
17. NRPLQ MIN                    5      9(5)
18. NRPLQ MAX                    5      9(5)
19. SYS MEM DMD                  7      9(5).9
20. SWAP RATIO                   8      9(5).99
21. ACTIVE SWAP RATIO            8      9(5).99
22. MEM UTILIZATION              8      9(5).99
23. AV WS SIZE                   8      9(5).99
24. AV CPU TIME                  8      9(5).99
25. THINK TIME                   8      9(5).99
26. Disk I/O                   510

        Max 15 entries; 1 entry 32

        a. Channel               2      99
        b. Unit                  2      99
        c. Seeks                 6      9(6)
        d. Reads                 6      9(6)
        e. Writes                6      9(6)
        f. Name                 10      X(10)
        g. Number                2      99


27. Number of Disk I/O entries   2      99

                               ---
                               667
                  Example Fortran Program

C	READ THE NEXT RECORD AND DISPATCH TO PROPER ROUTINE
50	READ (20,1010,END=900) RECTYP,RECSEQ,DATM,INTVL,NJOBS,DATA
	IF (RECTYP.EQ.ONE) GOTO 100
	IF (RECTYP.EQ.TWO) GOTO 200
	IF (RECTYP.EQ.THREE) GOTO 300
	GOTO 50
C
C
C	TRANSFER SYSTEM STATISTICS TO PROPER DATA AREA
100	DO 150 I = 1,33
	DSYS (I) = DATA (I)
150	CONTINUE
	GOTO 50
C
C
C	TRANSFER LOAD AVERAGES TO PROPER DATA AREA
200	DO 250 I = 1,135
	DLOAD (I) = DATA (I)
250	CONTINUE
	GOTO 50
C
C
C	TRANSFER THE FIRST EXPANDED PER JOB RECORD TO THE BUFFER
300	NUMREC = 1
	DO 350 I = 1,14
	BUFFER (NUMREC,I) = DATA (I)
350	CONTINUE
C
C
C	TRANSFER THE REST OF THE EXPANDED PER JOB RECORDS TO THE BUFFER
400	READ (20,1010,END=900) RECTYP,RECSEQ,DATM,INTVL,NJOBS,DATA
	IF (RECTYP.NE.THREE) GOTO 500
	NUMREC = NUMREC + 1
	DO 450 I = 1,14
	BUFFER (NUMREC,I) = DATA (I)
450	CONTINUE
	GOTO 400
C
C
C	TRANSFER THE EXPANDED STATISTICS RECORD TO THE PROPER DATA AREA
500	IF (RECTYP.NE.FIVE) GOTO 800
	DO 550 I = 1,64
	DEXPS (I) = DATA (I)
550	CONTINUE
C
C
C	OUTPUT ALL THE NEW RECORDS FOR THIS "WATCH" SAMPLE
600	DO 650 I = 1,NUMREC
	WRITE (21,1011) DATM,INTVL,NJOBS,DSYS,DLOAD,DEXPS,
	1 (BUFFER (I,J), J = 1,14)
650	CONTINUE
	GOTO 50
                   Example Cobol Program

PROCEDURE DIVISION.

GET-FILE-NAME.
	DISPLAY "Input file: " WITH NO ADVANCING.
	ACCEPT INPUT-STRING.
	UNSTRING INPUT-STRING DELIMITED BY "." INTO FNAME, FTYPE.
	OPEN INPUT IFILE.
	DISPLAY "Output file: " WITH NO ADVANCING.
	ACCEPT INPUT-STRING.
	UNSTRING INPUT-STRING DELIMITED BY "." INTO FNAME, FTYPE.
	OPEN OUTPUT OFILE.

READ-NEXT-RECORD.
	READ IFILE RECORD
		AT END GO TO CLOSE-AND-EXIT.
	IF RECTYP IS EQUAL TO 1 MOVE SYS-REC TO SYS-STRIP
		MOVE SYS-REC-DATA TO D-SYS-REC.
	IF RECTYP IS EQUAL TO 2 MOVE LOAD-REC TO LOAD-STRIP
		MOVE LOAD-REC-DATA TO D-LOAD-REC.
	IF RECTYP IS EQUAL TO 3 GO TO BUFFER-RECORDS.
	GO TO READ-NEXT-RECORD.


BUFFER-RECORDS.
	MOVE 1 TO NUMREC.
	MOVE EXPJOB-REC TO BUFFER (NUMREC).


CONTINUE-BUFFERING.
	READ IFILE RECORD
		AT END GO TO CLOSE-AND-EXIT.
	IF RECTYP IS NOT EQUAL TO 3 GO TO OUTPUT-BUFFER-RECORDS.
	ADD 1 TO NUMREC.
	MOVE EXPJOB-REC TO BUFFER (NUMREC).
	GO TO CONTINUE-BUFFERING.

OUTPUT-BUFFER-RECORDS.
	IF RECTYP IS NOT EQUAL TO 5 DISPLAY "Input file is not consistent !!!"
		DISPLAY "Processing aborted."
		GO TO CLOSE-AND-EXIT.
	MOVE EXPSTS-REC TO EXPSTS-STRIP.
	MOVE EXPSTS-REC-DATA TO D-EXPSTS-REC.
	PERFORM OUTPUT-SINGLE-RECORD VARYING REC FROM 1 BY 1
		UNTIL REC IS GREATER THAN NUMREC.
	GO TO READ-NEXT-RECORD.


OUTPUT-SINGLE-RECORD.
	MOVE BUFFER (REC) TO EXPJOB-STRIP.
	MOVE EXPJOB-REC-DATA TO D-EXPJOB-REC.
	WRITE DATA-REC.


CLOSE-AND-EXIT.
	CLOSE IFILE.
	CLOSE OFILE.
	STOP RUN.
               Normal Output from All Request

+----------------------------------------------------------+
|Sample 1                                                  |
|                       System Stats                       |
|                                                          |
+----------------------------------------------------------+
|Sample 1                                                  |
|                      Load Averages                       |
|                                                          |
+----------------------------------------------------------+
|Sample 1                                                  |
|                   Expanded Per-Job #1                    |
|                                                          |
+----------------------------------------------------------+
|Sample 1                                                  |
|                   Expanded Per-Job #2                    |
|                                                          |
+----------------------------------------------------------+
|Sample 1                    .                             |
|                            .                             |
|                            .                             |
+----------------------------------------------------------+
|Sample 1                                                  |
|                      Expanded Stats                      |
|                                                          |
+----------------------------------------------------------+
|Sample 2                                                  |
|                       System Stats                       |
|                                                          |
+----------------------------------------------------------+
|Sample 2                                                  |
|                      Load Averages                       |
|                                                          |
+----------------------------------------------------------+
|Sample 2                                                  |
|                   Expanded Per-Job #1                    |
|                                                          |
+----------------------------------------------------------+
|Sample 2                                                  |
|                   Expanded Per-Job #2                    |
|                                                          |
+----------------------------------------------------------+
|Sample 2                    .                             |
|                            .                             |
|                            .                             |
+----------------------------------------------------------+
|Sample 2                                                  |
|                      Expanded Stats                      |
|                                                          |
+----------------------------------------------------------+
                     Rearranged Output

+----------------------------------------------------------+
|Sample 1                                                  |
|                       System Stats                       |
|                      Load Averages                       |
|                      Expanded Stats                      |
|                   Expanded Per-Job #1                    |
|                                                          |
+----------------------------------------------------------+
|Sample 1                                                  |
|                       System Stats                       |
|                      Load Averages                       |
|                      Expanded Stats                      |
|                   Expanded Per-Job #2                    |
|                                                          |
+----------------------------------------------------------+
|Sample 1                    .                             |
|                            .                             |
|                            .                             |
|                            .                             |
|                            .                             |
|                            .                             |
+----------------------------------------------------------+
|Sample 2                                                  |
|                       System Stats                       |
|                      Load Averages                       |
|                      Expanded Stats                      |
|                   Expanded Per-Job #1                    |
|                                                          |
+----------------------------------------------------------+
|Sample 2                                                  |
|                       System Stats                       |
|                      Load Averages                       |
|                      Expanded Stats                      |
|                   Expanded Per-Job #2                    |
|                                                          |
+----------------------------------------------------------+
|Sample 2                    .                             |
|                            .                             |
|                            .                             |
|                            .                             |
|                            .                             |
|                            .                             |
+----------------------------------------------------------+
                SCSS Master File Definition

/STY VER
/WOR NONE
/NEW WORK.SCSS
YES
/MAS NONE
/N UNKNOWN
/REC 1
/LEN 159
/VAR USED
/LAB Percent CPU Usage
/LOC 33-39(5)
/TYP CON
/VAL 0 - 9999
/VAR SWPW
/LAB Percent CPU Idle & Processes Waiting Swapping
/LOC 40-46(5)
/TYP CON
/VAL 0 - 9999
/VAR SKED
/LAB Percent Scheduling
/LOC 47-53(5)
/TYP CON
/VAL 0-9999
/VAR NWSM
/LAB Average Number of Working Sets
/LOC 82-88(5)
/TYP CON
/VAL 0-9999
/VAR DSKR
/LAB Disk Reads
/LOC 116-120(4)
/TYP CON
/VAL 0-999
/VAR DSKW
/LAB Disk Writes
/LOC 121-125(4)
/TYP CON
/VAL 0-999


/SAM ALL
/SEL ALL
/SAV YES
/WIL 0
/COM YES
RAW.OUT
MASTER.SCSS
YES
ALL
WORK.SCSS
YES
                      Simple Analysis

/UNIVARIATE USED SWPW SKED NWSM
/STATISTICS MEAN STDDEV MEDIAN VARIANCE MINIMUM MAXIMUM RANGE
/CELLS ALL
/DISPLAY STATISTICS


USED  PERCENT CPU USAGE

    MEAN = 35.623
 STD DEV = 16.885
  MEDIAN = 37.321
VARIANCE = 285.097
 MINIMUM = 11.500
 MAXIMUM = 63.600
   RANGE = 52.100

TOTAL N = 13    MISSING N = 0

SWPW  PERCENT CPU IDLE & PROCESSES WAITING SWA

    MEAN = 50.769
 STD DEV = 21.348
  MEDIAN = 46.271
VARIANCE = 455.741
 MINIMUM = 15.600
 MAXIMUM = 82.200
   RANGE = 66.600

TOTAL N = 13    MISSING N = 0


SKED  PERCENT SCHEDULING

    MEAN = 9.962
 STD DEV = 4.943
  MEDIAN = 10.692
VARIANCE = 24.438
 MINIMUM = 2.700
 MAXIMUM = 16.400
   RANGE = 13.700

TOTAL N = 13    MISSING N = 0

NWSM  AVERAGE NUMBER OF WORKING SETS

    MEAN = 7.554
 STD DEV = 1.079
  MEDIAN = 7.198
VARIANCE = 1.164
 MINIMUM = 6.500
 MAXIMUM = 10.200
   RANGE = 3.700

TOTAL N = 13    MISSING N = 0