Previous Topic: 6.4.2 Analyzer Files with CPU Time MeasurementsNext Topic: 6.4.2.2 CPU Time in Job Level Files


6.4.2.1 CPU Time in Step and Interval Level Files


The CA MICS Batch and Operations Analyzer creates
step/interval level files from SMF type 30 Common Address
Space Work step and interval records (subtypes 2, 3, and 4).
Each observation in the step/interval files contains CPU time
utilization metrics for the program executing in the interval
or step.

The following are the CA MICS step and interval files:

  File    File Label
  ------  ------------------------------------
  BATPGM  Batch User Program Activity File
  BAT_TS  SMF User TSO Activity File
  BAT_ST  System Task Program Activity File
  BAT_TP  APPC/MVS TP Activity File
  BAT_OE  Open Edition/MVS Program File
  BAT_SA  System Address Space Activity File

There are numerous CPU time measurements recorded in the
SMF type 30 record.  Some CPU time metrics are subsets
of other recorded metrics.  It is important to understand
which CPU time fields are subsets of others to prevent
overstating the CPU time used by a step or interval.

The remainder of this section lists all of the CPU time
measurements found in the step and interval files, along with
a brief description.  The metrics are separated into the
following three groups:

o Standalone CPU Time Data Elements
o Subset CPU Time Data Elements
o Computed CPU Time Data Elements

For more information, see the data dictionary descriptions of
the elements.

Standalone CPU Time Data Elements
-------------------------------------------------------------
The standalone CPU time data elements listed below represent
all recorded CPU time used by a step or interval on the
system where the step executed, as well as CPU time spent on
special processors, such as the zAAP.

The only CPU time not captured in these standalone data
elements is CPU time used by remote enclaves executing on
other systems on behalf of the address space.  Remote enclave
CPU time is discussed in Section 6.4.2.3.

o PGMTCBTM - Step TCB Time

  PGMTCBTM contains the contents of SMF type 30 field
  SMF30CPT.

  It is the Task Control Block (TCB) CPU time used by the
  program executing in the step or interval.

o PGMSRBTM - Step SRB Time

  PGMSRBTM contains the contents of SMF type 30 field
  SMF30CPS.

  It is the System Request Block (SRB) CPU time used by the
  program executing in the step or interval.

o PGMITCTM - Step Initiator TCB Time

  PGMITCTM contains the contents of SMF type 30 field
  SMF30ICU.

  It is the Task Control Block (TCB) CPU time used during
  step initiation.  It is only recorded in the SMF type 30
  subtype 4 step end record.  For sites using interval
  records, the value of SMF30ICU is captured from each
  subtype 4 step end record and recorded in the observation
  representing the last interval record for that step.

o PGMISRTM - Step Initiator SRB Time

  PGMISRTM contains the contents of SMF type 30 field
  SMF30ISB.

  It is the System Request Block (SRB) CPU time used during
  step initiation.  It is only recorded in the SMF type 30
  subtype 4 step end record.  For sites using interval
  records, the value of SMF30ISB is captured from each
  subtype 4 step end record and recorded in the observation
  representing the last interval record for that step.

o PGMHIPTM - Step HIPERSPACE CPU Time

  PGMHIPTM contains the contents of SMF type 30 field
  SMF30HPT.

  It is the CPU time spent managing HIPERSPACES for the
  address space during program execution.

o PGMRCTTM - Step Region Control Task CPU Time

  PGMRCTTM contains the contents of SMF type 30 field
  SMF30RCT.

  It is the CPU time the z/OS operating system expended
  handling swapping and I/O error recovery for the address
  space.

o PGMIOITM - Step Region Control Task CPU Time

  PGMIOITM contains the contents of SMF type 30 field
  SMF30IIP.

  It is the CPU time the z/OS operating system expended in
  processing I/O interrupts for the address space.

o PGMZAPTM - Actual zAAP CPU Time

  PGMZAPTM contains the contents of SMF type 30 field
  SMF30_TIME_ON_IFA.

  It is the unnormalized CPU time used while the program was
  dispatched on zAAP (IFA) processors.  See PGMZPNTM under
  the Computed CPU Time Data Elements discussion below for a
  discussion of normalized zAAP CPU Time.

o PGMSUPTM - Actual zIIP CPU Time

  PGMSUPTM contains the contents of SMF type 30 field
  SMF30_TIME_ON_SUP.

  It is the unnormalized CPU time used while the program was
  dispatched on zIIP (IIP) processors.  For more information
  about normalized zIIP CPU Time, see PGMSPNTM under the
  Computed CPU Time Data Elements discussion below

Subset CPU Time Data Elements
-------------------------------------------------------------
The subset data elements listed below represent CPU time
measurements that are subsets of the CPU times listed above
as standalone CPU time data elements.

In general, these subset measurements are useful for
analysis, but not for chargeback because their values are
already accounted for in the standalone measurements.  An
exception might be made if you wanted to charge differently
for a particular subset of a standalone CPU time measurement.

o PGMPRETM - Step Preemptable/Client CPU Time
  SUBSET of PGMTCBTM - Step TCB Time

  PGMPRETM contains the contents of SMF type 30 field
  SMF30ASR.

  Preemptable SRBs are comparable to Task Control Blocks
  (TCBs) in scheduling and accounting, but maintain the low
  overhead advantages of SRBs.  Using the IEAMSCHD macro, the
  preemptable SRB type is determined by the PRIORITY
  parameter.  When either PRIORITY=PREEMPT or PRIORITY=CLIENT
  is specified, the SRB is preemptable.

  The primary difference between preemptable and client SRBs
  is the priority that they inherit.

  When PRIORITY=PREEMPT is specified, the preemptable SRB
  inherits the major priority of the target home address
  space.

  When PRIORITY=CLIENT SRB is specified, the preemptable SRB
  inherits the major priority of the address space named by
  the CLIENTSTOKEN parameter specified in the IEAMSCHD macro.
  This named address space accumulates the CPU time used by
  the client SRB during execution.

o PGMENCTM - Step Enclave CPU Time
  SUBSET of PGMTCBTM - Step TCB Time

  PGMENCTM contains the contents of SMF type 30 field
  SMF30ENC.

  It represents the portion of TCB CPU time used by
  independent enclaves, executing on the same system (LPAR)
  as the address space, while performing work on behalf of
  the address space.

  Independent enclaves are managed by Workload Manager (WLM)
  goals specific to the enclave, and not those of the "using"
  address space.

o PGMDENTM - Step Dependent Enclave CPU Time
  SUBSET of PGMTCBTM - Step TCB Time

  PGMDENTM contains the contents of SMF type 30 field
  SMF30DET.

  It represents the portion of TCB CPU time used by dependent
  enclaves, executing on the same system (LPAR) as the
  address space, while performing work on behalf of the
  address space.  Dependent enclaves inherit the Workload
  Manager (WLM) goals of the "using" address space.

o PGMZACTM - zAAP Eligible CPU Time on CP
  SUBSET of PGMTCBTM - Step TCB Time

  - PGMZECTM - zAAP IND Enclave CPU Time on CP
    SUBSET of PGMZACTM - zAAP Eligible CPU Time on CP

  - PGMZDCTM - zAAP DEP Enclave CPU Time on CP
    SUBSET of PGMZACTM - zAAP Eligible CPU Time on CP

  PGMZACTM contains the contents of SMF type 30 field
  SMF30_TIME_IFA_ON_CP.

  PGMZECTM contains the contents of SMF type 30 field
  SMF30_ENCLAVE_TIME_IFA_ON_CP.

  PGMZDCTM contains the contents of SMF type 30 field
  SMF30_DEP_ENCLAVE_TIME_IFA_ON_CP.

  PGMZACTM represents the portion of TCB CPU time that was
  eligible to execute on a zAAP processor, but actually
  executed on a standard processor.

  PGMZECTM is the portion of zAAP Eligible CPU Time on CP
  (PGMZACTM) attributable to independent enclaves.

  PGMZDCTM is the portion of zAAP Eligible CPU Time on CP
  (PGMZACTM) attributable to dependent enclaves.

  In a zIIP only configuration (no zAAP engines present) and
  SYS1.PARMLIB(IEASYSxx) option ZAAPZIIP=YES, all zAAP
  related CPU measurements will be zero (0).  Any zAAP CPU
  time will be included in all zIIP related CPU measurements.

  Analysis of zAAP eligible CPU time can help determine if it
  would be cost effective to purchase zAAP processors to
  offload JAVA workloads from standard processors to the
  lower cost zAAP processors.

o PGMSUCTM - zIIP Eligible CPU Time on CP
  SUBSET of PGMTCBTM - Step TCB Time

  - PGMSECTM - zIIP IND Enclave CPU Time on CP
    SUBSET of PGMSUCTM - zIIP Eligible CPU Time on CP

  - PGMSDCTM - zIIP DEP Enclave CPU Time on CP
    SUBSET of PGMSUCTM - zIIP Eligible CPU Time on CP

  PGMSUCTM contains the contents of SMF type 30 field
  SMF30_TIME_SUP_ON_CP.

  PGMSECTM contains the contents of SMF type 30 field
  SMF30_ENCLAVE_TIME_SUP_ON_CP.

  PGMSDCTM contains the contents of SMF type 30 field
  SMF30_DEP_ENCLAVE_TIME_SUP_ON_CP.

  PGMSUCTM represents the portion of TCB CPU time that was
  eligible to execute on a zIIP processor, but actually
  executed on a standard processor.

  PGMSECTM is the portion of zIIP Eligible CPU Time on CP
  (PGMSUCTM) attributable to independent enclaves.

  PGMSDCTM is the portion of zIIP Eligible CPU Time on CP
  (PGMSUCTM) attributable to dependent enclaves.

  In a zIIP only configuration (no zAAP engines present) and
  SYS1.PARMLIB(IEASYSxx) option ZAAPZIIP=YES, zIIP related
  CPU measurements include both JAVA and enclave SRB
  activity.  There is no way to separate what part was 'zAAP'
  versus the part that was 'zIIP'.

  Analysis of zIIP eligible CPU time can help determine if it
  would be cost effective to purchase zIIP processors to
  offload database serving workloads such as DB2, from
  standard processors to the lower cost zIIP processors.

o PGMEQPTM - Step Enqueue Promotion CPU Time
  SUBSET of PGMTCBTM/PGMSRBTM - Step TCB Time and SRB Time

  PGMEQPTM contains the contents of SMF type 30 field
  SMF30CEPI.

  It represents the portion of TCB CPU time and SRB CPU time
  used by the step while "enqueue promoted."  Enqueue
  promotion is used to speed the completion of address spaces
  that hold a reserve on resources needed by other workloads.

  While in the "enqueue promotion" status, all TCB and SRB
  time recorded for the address space is also added to field
  SMF30CEPI.

o PGMCRPTM - Promoted Due to Chronic Contention Time
  SUBSET of PGMTCBTM/PGMSRBTM - Step TCB Time and SRB Time

  PGMCRPTM contains the contents of SMF type 30 field
  SMF30CRP.

  It represents the portion of TCB CPU time and SRB CPU time
  used by the step while promoted due to resource contention.
  A higher temporary dispatching priority is given to speed
  the completion of address spaces causing resource
  contention.

  While in the "chronic resource contention" status, all TCB
  and SRB time recorded for the address space is also added
  to field SMF30CRP.

o PGMUSSTM - Step USS CPU Time

  PGMUSSTM contains the contents of SMF type 30 field
  SMF30OST.

  It represents the portion of TCB CPU time and SRB CPU time
  used by the process under measurement for USS.

o PGMTSITM - Step Initiator TCB Time at Step Init

  PGMTSITM contains the contents of SMF type 30 field
  SMF30ICU_Step_Init.

  It is the Task Control Block (TCB) CPU time that is spent
  executing initiator code during job step initialization.
  It is only recorded in the SMF type 30 subtype 4 step end
  record.  For sites using interval records, the value of
  SMF30ICU_Step_Init is captured from each subtype 4 step end
  record and recorded in the observation representing the
  last interval record for that step.

  It represents the portion of TCB CPU time that is spent
  executing initiator code in preparation for a step.

o PGMTSTTM - Step Initiator TCB Time at Step Term

  PGMTSTTM contains the contents of SMF type 30 field
  SMF30ICU_Step_Term

  It is the Task Control Block (TCB) CPU time that is spent
  executing initiator code during job step termination.  It
  is only recorded in the SMF type 30 subtype 4 step end
  record.  For sites using interval records, the value of
  SMF30ICU_Step_Term is captured from each subtype 4 step end
  record and recorded in the observation representing the
  last interval record for that step.

  It represents the portion of TCB CPU time that is spent
  executing initiator code at step termination of the
  previous step in preparation for the next step.

o PGMSSITM - Step Initiator SRB Time at Step Init

  PGMTSITM contains the contents of SMF type 30 field
  SMF30ISB_Step_Init.

  It is the System Resource Block (SRB) CPU time that is
  spent executing initiator code during job step
  initialization.  It is only recorded in the SMF type 30
  subtype 4 step end record.  For sites using interval
  records, the value of SMF30ISB_Step_Init is captured from
  each subtype 4 step end record and recorded in the
  observation representing the last interval record for that
  step.

  It represents the portion of SRB CPU time that is spent
  executing initiator code in preparation for a step.

o PGMSSTTM - Step Initiator SRB Time at Step Term

  PGMTSTTM contains the contents of SMF type 30 field
  SMF30ISB_Step_Term

  It is the System Resource Block (SRB) CPU time that is
  spent executing initiator code during job step termination.
  It is only recorded in the SMF type 30 subtype 4 step end
  record.  For sites using interval records, the value of
  SMF30ISB_Step_Term is captured from each subtype 4 step end
  record and recorded in the observation representing the
  last interval record for that step.

  It represents the portion of SRB CPU time that is spent
  executing initiator code at step termination of the
  previous step in preparation for the next step.

Computed CPU Time Data Elements
-------------------------------------------------------------
CA MICS provides several computed CPU time data elements
described below.  In general, the computed CPU time
measurements are provided to simplify common analysis or
chargeback tasks.

o PGMCPUTM - Step TCB+SRB CPU Time
  COMPUTATION: PGMTCBTM + PGMSRBTM

  This is the sum of step Task Control Block (TCB) and
  System Request Block (SRB) CPU time used by the step
  or interval.

o PGMICPTM - Initiator CPU Time
  COMPUTATION: PGMITCTM + PGMISRTM

  This is the sum of step Task Control Block (TCB) and
  System Request Block (SRB) CPU time used by the step

o PGMZPNTM - Normalized zAAP CPU Time
  COMPUTATION: PGMZAPTM * PGMZAPNF

  PGMSPNTM - Normalized zIIP CPU Time
  COMPUTATION: PGMZAPTM * PGMSUPNF

  These CPU times contain the normalized CPU special
  processor CPU time.  To normalize, the values of these data
  elements are multiplied by the normalization factor to
  adjust the time to the speed of the standard CEC
  processors.  On most z/Series processors, the normalization
  factor is 1, which means that the special processors (zAAP
  and zIIP) and standard processors run at the same speed and
  the values of actual special processor CPU times and the
  normalized CPU times are equal.

  On some z/Series processors however, the machine can be
  configured (for pricing reasons) so that the standard
  processors run at a slower speed.  This "knee-capping" of
  the standard processors does not affect special processors.
  In this situation, the value of the actual CPU time values
  and the normalized CPU time values will differ by the
  normalization factor.

o PGMXTSTM - TCB CPU Time Without zAAP/zIIP Eligible
  COMPUTATION: PGMTCBTM - PGMZACTM + PGMSUCTM

  This is the TCB CPU time minus all special processor
  eligible CP time in an interval. PGMXTSTM represents the
  portion of TCB time without zAAP and zIIP eligible CPU
  time.

  PGMXTSTM may contain a negative value.  zAAP Eligible CPU
  Time on a CP (PGMZACTM) may contain values that are
  slightly greater than PGMTCBTM for programs that are
  completely zAAP eligible.  This is due to a rounding
  problem in the raw data metric, SMF30_TIME_IFA_ON_CP of the
  Common Address Space Work record (type 30).

o PGMXCSTM - CPU Time Without zAAP/zIIP Eligible
  COMPUTATION: PGMCPUTM - PGMZACTM + PGMSUCTM

  This is the total TCB+SRB CPU time minus all special
  processor eligible CP time in an interval. PGMXCSTM
  represents the portion of TCB+SRB time without zAAP and
  zIIP eligible CPU time.

o PGMTCSTM - Step TCB CPU Time from Service Units
  COMPUTATION: PGMTCSTM=PGMTCBSU/SMFSUCPU*WLMSCCPU

  This is the TCB CPU time that is calculated from service
  units. PGMTCSTM provides non-zero values for steps and
  intervals that use less than 0.005 TCB seconds of CPU time.

o PGMSRSTM - Step SRB CPU Time from Service Units
  COMPUTATION: PGMSRSTM=PGMSRBSU/SMFSUCPU*WLMSCSRB

  This is the SRB CPU time that is calculated from service
  units. PGMSRSTM provides non-zero values for steps and
  intervals that use less than 0.005 SRB seconds of CPU time.

o PGMCPSTM - TCB+SRB CPU Time from Service Units
  COMPUTATION: PGMCPSTM=SUM(PGMSRSTM,PGMCPSTM)

  This is the total TCB and SRB CPU time that is calculated
  from service units. PGMCPSTM provides non-zero values for
  steps and intervals that use less than 0.005 SRB seconds of
  CPU time.

o PGMCRATM - Step CP RA Actual CPU Time
  COMPUTATION: SUM(PGMITCTM,PGMISRTM,PGMTCBTM,PGMSRBTM,
               PGMHIPTM,PGMRCTTM,PGMIOITM)

  This is the total CPU time that is calculated by adding
  together all standalone CPU time data elements when
  resource allocation was active (Step Resource Allocation
  Percent, PGMPCRA is greater than zero).  PGMCRATM provides
  the total general processor CPU time while resource
  allocation was active.

o PGMZRATM - Step zIIP RA Actual CPU Time
  COMPUTATION: PGMZRATM=PGMSPNTM

  This is the zIIP normalized CPU time that was accumulated
  for the step or interval while resource allocation was
  active.  PGMZRATM includes PGMZRFTM.

o PGMZRFTM - Step zIIP RA Refund CPU Time
  COMPUTATION: PGMCRATM*((1/(1-(PGMPCRA/100))-1))

  This is the CPU time that should have been shifted to the
  zIIP processor from the general processor for the step or
  interval while resource allocation was active.