IMS accounting information
The nature of accounting methods varies a great deal among data processing installations. The IMS Transaction Manager presents special difficulties, because many and varied transactions are processed by a partnership of the control region and dependent regions.
Further, operationally discrete applications can be served concurrently.
For installations with IMS-dedicated processors, the overall cost of hardware and support functions is often charged back based on predicted and actual use by contributing groups. For shared systems, the processor usage can be the base for proportional cost.
Although IMS does not have an explicit accounting function, the individual events that make up the processing activity are recorded on the IMS log in considerable detail. Analysis of IMS log records can be used as a basis for charge-back algorithms. You can, for example, obtain a report from the Statistical Analysis utility of the number of transactions and the average number of DL/I calls for each transaction.
Another source of resource usage figures is the reports produced as a result of IMS Monitor data collection. Samples of processing activity can be taken on a regular basis. Accounting algorithms can use, for example, processor utilization by program.
Both of these approaches require further manipulation and calibration of the resource indicators.
If the DL/I address space option is used (LSO=S), accounting procedures based on SMF data will be affected. SMF statistics for IMS system data sets and Fast Path databases are accounted to the control region procedure. Full function databases are accounted to the DL/I address space procedure.
Using the Application Accounting report
The Statistical Analysis utility produces an Application-Accounting report that you can use to assess machine charges. The following breakdown is provided for each transaction and for each program:
- The number of messages with related total and average processor time in seconds
- The number and type of DL/I message calls
- The number and type of DL/I database calls
The following example illustrates the output format.
A P P L I C A T I O N A C C O U N T I N G R E P O R T D A T E 06/05/07 P A G E 00005
PROGRAM TRANSACTION MESSAGE- - - - COUNTS DATA - - - - - - - - - BASE - - - - - - - - COUNTS CC OR RC TOT PROG AVG
NAME CODE PRI QTY GU GN ISRT GU GN GNP GHU GHN GHNP ISRT DLET REPL NOT 0 CPU TIME TIME
CPGM2V0 CONV21V0 1 5 5 10 9 0 0 0 0 0 0 0 0 0 0 0.0S 0.000S
PGM2C0 SMQR21C0 1 3 3 3 2 0 0 0 0 0 0 0 0 0 0 0.0S 0.000S
PGM2V0 TRAN21V0 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0.0S 0.000S
ICE143I
Using IMS transaction profiles
You can use a composite picture of each transaction as a basis for estimating usage. The IMS Transaction profile can contain DL/I call requirements by type of call and possibly items derived from path length for other processing blocks. You can weight the message count to allow for heavy DL/I use by the transaction. Transaction statistics can be obtained on a regular basis from /DISPLAY output, for example at end-of-day or before shutdown.
The profiles should characterize the IMS workload in such a way that growth trends and major deviations from the predicted load can be traced to the transaction codes responsible.