Browse Prior Art Database

Application Performance Evaluator

IP.com Disclosure Number: IPCOM000075282D
Original Publication Date: 1971-Aug-01
Included in the Prior Art Database: 2005-Feb-24
Document File: 4 page(s) / 59K

Publishing Venue

IBM

Related People

Baird, R: AUTHOR

Abstract

This is a technique of controlling computer system activity in order to measure selected hardware or software functions as they interact within an application under real operating conditions. It takes the role of a system exerciser that is controlled by means of a language which provides a convenient means of synthesizing an actual job. By means of the language, the user can construct benchmark or yardstick programs to suit his needs. The evaluation essentially produces a synthetic job which mimics the real job described, but is not a simulator in that it is data content independent, but sensitive to the data structure. The production of a given qualitative result is not so much the objective as is the making of quantitative statements about a result as it relates to the specific environment selected.

This text was extracted from a PDF file.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 46% of the total text.

Page 1 of 4

Application Performance Evaluator

This is a technique of controlling computer system activity in order to measure selected hardware or software functions as they interact within an application under real operating conditions. It takes the role of a system exerciser that is controlled by means of a language which provides a convenient means of synthesizing an actual job. By means of the language, the user can construct benchmark or yardstick programs to suit his needs. The evaluation essentially produces a synthetic job which mimics the real job described, but is not a simulator in that it is data content independent, but sensitive to the data structure. The production of a given qualitative result is not so much the objective as is the making of quantitative statements about a result as it relates to the specific environment selected.

There is no input/output (I/O) done within the main body of the evaluator. In order to do I/O, access method interface routines (AMIR) are interfaced with the system. Several generalized AMIRs, to handle the more frequently used accessing techniques, are considered standard components of the system. Other AMIRs are user written. Since the interfaces are standardized via several macros included with the system, a library of AU(IRs can be built to access I/O for any user's special need.

On occasion, it may be necessary to perform functions not available in the standard components of the system. Examples of this are snaps, pauses, calculations, and generation of keys. The user may integrate virtually any component into the system, using function interface routines (FUNCTION) or process interface routines (PROCESS). Generally, FUNCTIONS are used for generation of keys for random or direct I/O operations. PROCESSes are used to take dumps, do processing loops, simulate queues, etc.

There are three ways to take measurements using the evaluation. First, it may measure itself using the system timer. Secondly, it may trap all wait time by using a wait absorbtion routine. Thirdly, it may emit signals to an external measurement device at selected places. Any or all of these measurement devices may be suppressed selectively.

The uses of the evaluator are: 1) Building benchmark programs. 2) Getting timing estimates on a proposed application. 3) Timing proposed changes to an existing application. 4) Timing I/O activity on hardware using the evaluator in conjunction with an external measurement device. 5) Measuring the amount of "gain" or "loss" due to multiprogramming. 6) Calibrating the interaction of different access methods.

Structurally, the system comprised the following components: 1. Language Interpreter Reads all statements and resolves operand references.

Tables are built and pointers to them are established. 2. Phase Initiator

1

Page 2 of 4

Determines the sequence and priority of all phases. Picks

all those requesting the same sequence to run concurrently

to each other. 3. Wait Time Recorder A task runnin...