IBM Support

Reporting CPU time as service units

Question & Answer


Question

Can I report CPU time as service units using IMS Performance Analyzer?

Cause

In order to meaningfully compare the performance of two different CPUs processing a similar transaction workload, a unit of measure called the service unit is required. The service unit normalizes the reporting of CPU time to allow for performance comparisons between, for example, an older processor and a newer processor in terms of CPU effort. In the event that an older processor has been replaced with a newer, faster processor, it allows users to determine if transaction processing is using more or less CPU cycles on the newer processor than on the older processor.

Answer

APAR PM77790 adds a new form field CPUSU which reports CPU time as service units, where:

CPUSU = CPU time * Conversion factor

CPU service unit reporting is only available in form-based transit reports.

Conversion Factor:

When IMS PA is running on the same system that generated the IMS log input file, the conversion factor can be calculated at run-time. Otherwise the conversion factor must be supplied to IMS PA in the command input.

IMS PA provides a REXX EXEC (member IPICPUSU in library SIPIEXEC) to generate the CPU time to Service Units conversion factor. You must execute this REXX on the same system that created the IMS log file. The command generated by this REXX is then input into the IMS PA batch process.

Note: There is no provision for specialty processors.

Output from REXX EXEC:


* IBM IMS Performance Analyzer: CPU time to Service Units conversion * * SYSID: XYZ1 * * CPU VV --ID-- Model Speed Specialty * 0 00 039A37 2818 1.000 * 1 00 039A37 2818 1.000 * 2 00 039A37 2818 1.000 zIIP * * Adjustment values: RMCTADJC=718 RMCTCPU=4097 * * Formula: SUSEC = 1000000 / (RMCTADJC * 256 / RMCTCPU) * Result : 1 CPU second = 22289.563 Service Units * * The following IMSPA batch command will convert CPU time to SUs: IMSPALOG SYSTEM(name,Vvrm,22289.563)

New form field CPUSU:

 
 
Field Name  . . : CPUSU
Source  . . . . : IMS 
Description . . : CPU Service Units


The number of CPU service units consumed by the transaction. The service units are calculated by multiplying the CPU time (in seconds) by the processor-specific conversion factor.

The conversion factor for each IMS system should be specified in your batch JCL:

1. Use the IPICPUSU REXX EXEC located in the SIPIEXEC library to calculate the conversion factor and generate the batch command:


IMSPALOG SYSTEM(name,Vvrm,factor)

2. Specify the command generated by step 1 in your batch JCL, for example:


//IPIOPTS DD * * IMS System Definitions IMSPALOG SYSTEM(OLD1,V101,14637.212) IMSPALOG SYSTEM(NEW1,V121,CURRENT) /*

You can specify a factor of “CURRENT” to instruct IMS PA to calculate the conversion factor at run time, based on the processor where IMS PA is executing.

If you do not specify a conversion factor for an IMS subsystem to be reported then IMS PA will use “CURRENT”.

Batch command input:

The following JCL runs the LIST and SUMMARY form-based transit reports; where transaction CPU time and service units are both reported. There is one “IMSPALOG SYSTEM” command for each IMS subsystem. This is where the conversion factor is specified.


//IMSPA JOB (ACCOUNT),'NAME' //* //IMSPA EXEC PGM=IPIMAIN,PARM='V121' //STEPLIB DD DISP=SHR,DSN=IMSPA.V4R3M0.SIPILINK //SYSPRINT DD SYSOUT=* //LOLD1001 DD DISP=SHR,DSN=IMS.OLD1.SLDS //LNEW1001 DD DISP=SHR,DSN=IMS.NEW1.SLDS //IPIOPTS DD * * IMS System Definitions IMSPALOG SYSTEM(OLD1,V101,14637.212) IMSPALOG SYSTEM(NEW1,V121,22289.563) /* //IPICMD DD * IMSPALOG LIST(SECGROUP,FIELDS(TRANCODE,IMSID,RESPIMS,CPUTIME,CPUSU)) IMSPALOG SUMMARY(SECGROUP,FIELDS(TRANCODE,IMSID,RESPIMS,CPUTIME,CPUSU)) IMSPALOG EXECUTE /*

Note that the previous job can be split into 2 steps, one per IMS subsystem. In this case the two reports will have to be compared manually.

Report output:

The following transaction list report shows CPU time and service units together.

 


Proc IMS Resp CPU CPU Svc Trancode IMS ID Time Time Units BANK OLD1 2.629 1.880 28047 BANK NEW1 2.425 1.234 27505

While the CPU time for the same transaction running on two different systems shows a 52% improvement, in terms of service units the difference is only around 2%.

Requirements:

1. You must install APAR PM77790 PTF UK91303.

[{"Line of Business":{"code":"LOB35","label":"Mainframe SW"},"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SSAVHQ","label":"IMS Performance Analyzer for z\/OS"},"ARM Category":[{"code":"a8m0z000000cvZ6AAI","label":"IMS Performance Analyzer for z\/OS"}],"ARM Case Number":"","Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"All Version(s)"}]

Document Information

Modified date:
15 November 2020

UID

swg21643361