SOFTWARE PRODUCTS [ COMMUNICATOR 3000/XL: XL REL. 2.2 (A.41.00) ] MPE/iX Communicators
COMMUNICATOR 3000/XL: XL REL. 2.2 (A.41.00)
Chapter 5 SOFTWARE PRODUCTS
HP Software Performance Tuner/XL
by Jim Knoop--PTC/Application Support Division
HP Software Performance Tuner/XL (SPT/XL) is an interactive tool for
monitoring and reporting the resource usage of native mode application
programs. HP Software Performance Tuner/XL provides the information you
need to increase the performance of your MPE XL native mode applications.
With SPT/XL you can evaluate the design of applications and their data
structures in terms of the system resources they require. The effects of
changes to the application can be measured and current resource use can
be quickly compared with previous performance collections. In addition,
you can see reports of resource use based on transactions you define and
redefine at any time.
Traditional code profilers focus on CPU time and instruction counts.
SPT/XL not only uses the sampling techniques of these traditional
profilers, but also monitors system events. This allows SPT/XL to report
CPU use, wait times, file system and HP TurboIMAGE activity, intrinsic
use and response time by transaction type.
TRANSACTIONS
SPT/XL views a running program as a series of transactions. A
transaction begins when an event you have chosen occurs in the program.
A simple, but common, example would be to have a transaction begin with
user input through a terminal. However, there are over 300 events to
choose from. Each time SPT/XL sees a transaction event to process, all
the resources the program uses are associated with that one transaction
until the next transaction event. If you choose not to define any
transaction events, the entire program is considered a single
transaction.
Examples of transaction events are:
* Accessing a specific file with any file system intrinsic or Pascal or
COBOL file manipulation verbs
* Specific accesses of an HP TurboIMAGE database, such as a DBGET on a
particular dataset
* Calling either of two new intrinsics - STARTTRAN and ENDTRAN
* Calling any of the over 300 monitored intrinsics
Unless you wish to code calls to STARTTRAN and ENDTRAN, you need not
define transactions until you analyze the data gathered while monitoring
an application. You can then define transactions as you like, and
redefine them any time.
You may choose as many different types of events to begin transactions as
your application requires. SPT/XL will report the resource consumption
of each different transaction type individually. You can isolate the
transactions that are slow or have erratic response times and examine
them in detail.
COMPARISON
SPT/XL will compare two monitored executions of your application in a way
that quickly points to where the increase or decrease in response time or
processing time occurred. Because you can define transactions, you know
that the comparison is "apples to apples." Variations in the way the
application was run and differences in the run time environment that
don't affect the transaction you are interested in can be ignored.
You can use this capability to understand what is happening in your
application when response times are long as compared to runs when
response times are short. By making a "benchmark" run when conditions
are optimal and comparing it with runs made to the application in
production, you can see how the application differs from what you might
have expected.
You can also compare individual transactions and groups of transactions
against each other in the same way. Often end users find erratic,
unpredictable response more annoying than slow response. With SPT/XL you
can see the real difference between the fast and slow transactions.
DATA COLLECTION
SPT/XL allows you to monitor a program that is already in use. There is
no need to restart a program hoping to recreate a problem. SPT/XL
prompts you for a program file name and then displays all processes
running that program. You may choose any one of the already running
processes or choose to start a new instance of the application that will
run directly under SPT/XL.
A new feature of HP GlancePlus/XL allows you to start an SPT/XL
collection by pressing a function key in the Process Screen.
REPORTING
SPT/XL analyzes and reports on the data collected interactively. If you
wish, each display can be printed or you can have a standard set of
reports printed for any transaction type. SPT/XL reports information in
a way designed to help you pinpoint problems and tuning opportunities
quickly.
The information available can be summarized as:
* Intrinsics
- frequency of use
- elapsed time/CPU time
- calling location
- major wait states
* Files used
- frequency of access
- elapsed time/CPU time used in accessing
- blocks transferred
* TurboIMAGE Databases
- datasets accessed and mode of access
- intrinsics used
- buffer use statistics
- lock and hashing conflicts
* Program code
- code and XL files used (execution frequency)
- procedures executed
- instructions executed (statement numbers for Pascal)
- COBOL and Pascal verbs used with execution times
* Transactions
- summary of CPU/elapsed time
- major wait states
- intrinsic traces
- response time histograms and percentile rankings
- comparisons
APPLICATION PERFORMANCE MANAGEMENT
Tuning an application should not be time consuming. SPT/XL can become a
part of your standard development cycle, helping you anticipate resource
needs, finding and tuning the critical parts of the application, and
building efficient use of your MPE XL system into your application from
the beginning.
After development, SPT/XL will give you the information you need to
understand how your applications work in a production environment. Using
the comparison feature will show you how your applications' resource use
has changed over time. In combination with system level performance
management, application performance management using SPT/XL will maximize
the performance of your computer investment.
MPE/iX Communicators