Dismiss
InnovationQ will be updated on Sunday, Oct. 22, from 10am ET - noon. You may experience brief service interruptions during that time.
Browse Prior Art Database

Process for Real Time, Trace Driven Performance Monitors

IP.com Disclosure Number: IPCOM000122017D
Original Publication Date: 1991-Oct-01
Included in the Prior Art Database: 2005-Apr-04
Document File: 3 page(s) / 107K

Publishing Venue

IBM

Related People

Smith, MG: AUTHOR

Abstract

A process for monitoring the performance of a computer system in real- time is described. The process is novel in that it is driven by a "trace" (or log) of system events, such as the traces that are available in the AIX* operating system.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 52% of the total text.

Process for Real Time, Trace Driven Performance Monitors

      A process for monitoring the performance of a computer
system in real- time is described.  The process is novel in that it
is driven by a "trace" (or log) of system events, such as the traces
that are available in the AIX* operating system.

      Trace facilities are powerful tools for monitoring the detailed
performance of operating systems.  Trace logs record the dynamic
behavior of the system in great detail. Usually, the trace facility
is used to generate a trace of system events in a log file,  which
are  later displayed or post-processed in some way. The trace log
records are produced by calls to tracing functions which have been
pre-defined at key places in the system or user code. Each of the
system events is recorded with a timestamp and any relevant state
information, e.g., a "start I/O" event, indicates the I/O device id,
whether the I/O was a read or write request, the I/O buffer address
in memory, the transfer size, etc.  Depending on the number of trace
calls which  have been enabled and the amount of disk space allocated
to the log file, the trace log may only capture anywhere from several
seconds to a few hours of trace data.

      Quite often, there is a need for  specialized performance tools
which monitor the dynamic behavior of specific subsystems or programs
for arbitrarily long periods of time.   For instance, one may want to
perform a statistical analysis of file access over one or more days.
If the trace facility was used in the usual way to collect many file
access events over a long interval, the resulting trace log file
would require a large amount of disk space for storage, and a large
amount of time for post-processing the data.

      Consequently, the process in this article was developed for
gathering  and analyzing trace data in real-time and for arbitrary
long periods of time. This process is generic and provides a skeleton
for a performance monitor.   A complete performance monitor is
implemented by customizing the process  to look for and analyze trace
events from specific subsystems or programs.

      With the disclosed process, a performance monitor can be
prototyped quickly and changed or extended easily. Furthermore, such
a trace-driven monitor can "see" the dynamic system behavior and can
relate coincident system events, which is not possible with simpler
instrumentation, such as counters.

      The process runs asynchronously and concurrently with
applications which are to be measured.  It is designed to be as
unobtrusive as possible (this is reasonable in AIX 3.1, since the
trace facility has very low overhead).
 THE PROCESS

      The process can be though...