Monitoring zIIP Usage

The purpose of Adabas System Coordinator for zIIP is to reduce the Adabas System Coordinator Daemon CPU consumption on general processors (GP) by offloading part of the Daemon processing to System z Integrated Information Processors (zIIP). Adabas System Coordinator for zIIP offers statistics about how much CPU time it has consumed on GPs and zIIPs and for which reasons it has executed on GPs. This document provides information on how to view and understand these zIIP-related statistics.


zIIP-Related Statistics

Adabas System Coordinator for zIIP shows zIIP-related statistics

  • in the Adabas System Coordinator session statistics that are printed when the Daemon terminates, and

  • when the Adabas System Coordinator Daemon operator command DZSTAT is given from an operator console.

See Understanding the zIIP-Related Statistics below for information on how to interpret these statistics.

Understanding the zIIP-Related Statistics

Adabas System Coordinator for zIIP prints the full set of zIIP-related statistics in the Adabas System Coordinator session statistics when the Daemon terminates. The same statistics are displayed at other occasions, as described in section zIIP-Related Statistics above.

An Adabas System Coordinator Daemon started with the Daemon runtime parameter ZIIP=YES prints the zIIP-related statistics during termination at the end of its session statistics. They show the following information:

Statistic Description
Total enclave CPU time

(*note-2)

The total CPU time consumed by the Workload Manager enclave created by the Adabas System Coordinator Daemon for its entire session, comprising the CPU times consumed on GPs and on zIIPs.
Enclave GP time The CPU time of the enclave that the Adabas System Coordinator Daemon consumed on GPs.
Enclave zIIP time The CPU time of the enclave that the Adabas System Coordinator Daemon consumed on zIIPs.
Enclave zIIP time (%)

(*note-1)

The percentage of the enclave CPU time that the Adabas System Coordinator Daemon consumed on zIIPs, calculated as:

Enclave zIIP time / Total enclave time * 100

Eligible zIIP CPU time The CPU time that the Adabas System Coordinator Daemon was eligible to execute on zIIPs, comprising the actual Enclave zIIP time and the Eligible zIIP CPU time on GP.
Enclave zIIP time The CPU time of the enclave that the Adabas System Coordinator Daemon consumed on zIIPs (same as the ‘Enclave zIIP time’ under ‘Total enclave CPU time’).
Eligible zIIP time on GP The CPU time of the enclave that the Adabas System Coordinator Daemon was eligible to execute on zIIPs but instead consumed on GPs because no zIIP was available.
Eligible zIIP time on GP (%)

(*note-4)

The percentage of the eligible zIIP CPU time that the Adabas System Coordinator Daemon instead consumed on GPs, calculated as:

Eligible zIIP time on GP / Eligible zIIP CPU time * 100

Mode switches

(*note-7)

The number of mode switches performed by the Adabas System Coordinator Daemon comprising the number of switches into SRB mode to become eligible for execution on a zIIP and the number of switches into TCB mode to perform operations that were incompatible with SRB mode.
Parallel requests

(*note-7)

The number of times the Adabas System Coordinator Daemon requested that the TCB perform an operation in parallel to its own processing in SRB mode.
No free element for request The number of times the SRB had to wait for a free request element until it could issue a parallel request to the TCB.
Parallel requests per TCB pause

(*note-5)

The average number of parallel requests processed by the TCB until it had to pause and wait for more work, calculated as: Parallel requests / Pause TCB (below).
Extended statistics
The following extended statistics were introduced for internal reporting and may be changed or removed in future releases.
Pause SRB The number of times the SRB was waiting for work.
Release SRB The number of times the SRB was released to continue processing.
Pause TCB The number of times the TCB was waiting for work.
Release TCB The number of times the TCB was released to continue processing .
Pause for wait

(*note-6)

The number of times the Adabas System Coordinator Daemon had no work to do (i.e., was waiting for I/Os, new commands, or other events).
Release from wait The number of times the Adabas System Coordinator Daemon was released to continue processing after an event had occurred.
SRB/TCB scheduling by type of work
The following statistics "by type of work" show why the processing mode (SRB or TCB mode) was switched or a parallel request was issued. They indicate the reasons for the "Mode switches" and "Parallel requests" reported above. Only categories with nonzero counts are shown. A selection of typical categories follows:
EXCPs The number of direct-access input/output operations to any Adabas System Coordinator Daemon datasets (COLAT, TMRFI, etc.), in most cases issued via parallel requests to the TCB.
Fastpath services The number of times that Adabas Fastpath required execution in TCB mode, performed via switches to TCB mode and back to SRB mode.
Operator commands The number of operator commands whose processing required execution in TCB mode, performed via switches to TCB mode and back to SRB mode.
Sequential writes The number of writes to a sequential dataset (e.g., DDPRINT), in most cases issued via parallel requests to the TCB.
Daemon services The number of times that the Adabas System Coordinator Daemon required execution in TCB mode, performed via switches to TCB mode and back to SRB mode.
Timer services The number of timer operations that required execution in TCB mode, performed via switches to TCB mode and back to SRB mode.
Transaction Manager services The number of times that Adabas Transaction Manager required execution in TCB mode, performed via switches to TCB mode and back to SRB mode.
SRB/TCB scheduling (more)
The following statistics "(more)" provide greater granularity to those mode switches reported in "by type of work". They are provided for internal reporting and may be changed or removed in future releases. A selection of typical categories follows:
Serialization The number of serialization requests whose processing required execution in TCB mode, performed via switches to TCB mode and back to SRB mode.
Miscellaneous The number of other, infrequent operations that required execution in TCB mode, performed via switches to TCB mode and back to SRB mode.
(Other types of work that must be performed in TCB mode are reported if they occurred in the Adabas System Coordinator Daemon session.).
Enclave GP service units The GP CPU service units accumulated by the enclave created by the Adabas System Coordinator Daemon.
Enclave zIIP service units The zIIP CPU service units accumulated by the enclave created by the Adabas System Coordinator Daemon, normalized to GP speed.
GPs The number of general processors (GP) managed by the operating system.
zIIPs The number of System z Integrated Information Processors (zIIP) managed by the operating system.
zIIP SMT threads The number of simultaneous multithreading (SMT) threads per zIIP core.
zIIP normalization factor The factor by which zIIP CPU times have been multiplied by z/OS to be comparable with the CPU times of the GPs, if the GPs are throttled.

Notes:

  1. The "Enclave zIIP time (%)" shows in a nutshell how much of the CPU consumption in the Workload Manager enclave created by the Adabas System Coordinator Daemon was actually offloaded to zIIPs.
  2. To assess the zIIP CPU percentage properly, take into account that this number covers only the CPU time consumed by dispatchable units belonging to the enclave created by Adabas System Coordinator for zIIP - that is, by the Adabas System Coordinator Daemon main task TCB and its companion SRB. It does not cover CPU time consumed by dispatchable units that belong to other enclaves or to no enclave at all - such as system SRBs used for asynchronous event processing (I/O completion, cross-memory posts, XCF/XES exits, etc.). Therefore, the percentage of CPU time consumed on zIIPs relative to the total CPU time consumed by all dispatchable units in the the Adabas System Coordinator Daemon address space tends to be lower than the percentage relative to the enclave CPU time.
  3. Also take into account that the TCB/SRB mode switches and parallel requests generate overhead that is also attributed to the GP and zIIP CPU times of Adabas System Coordinator for zIIP. For a more accurate assessment how much CPU time Adabas System Coordinator for zIIP saves on GPs, run the same, representative test workload both with ZIIP=YES and ZIIP=NO and compare the GP CPU times consumed in both scenarios. The GP CPU time savings will typically depend on the type of workload processed by the Adabas System Coordinator Daemon, particularly the speed and level of parallelism with which messages arrive.
  4. If the "Eligible zIIP time on GP (%)" is non-negligible, it suggests that the available zIIPs in the host system are over-allocated. If their free capacity was higher, Adabas System Coordinator for zIIP could offload more of its work to the zIIPs.
  5. The number of "Parallel requests per TCB pause" indicates the level of parallelism that Adabas System Coordinator for zIIP could utilize by stringing TCB-mode operations together. A number close to 1 indicates low parallelism; a greater number, higher parallelism and a greater reduction of overhead.
  6. The "Pause for wait" count, relative to the number of I/Os (reported in the zIIP-related statistics under "EXCPs") and Adabas System Coordinator Daemon commands (reported higher up in the session statistics), indicates the level of parallelism that the Adabas System Coordinator Daemon could utilize to process multiple commands concurrently. The higher the ratio of commands plus I/Os over "pauses for wait", the more work the Adabas System Coordinator Daemon was able to do without pause (such as waiting for I/O completion or for the arrival of a new command).
  7. The counts of mode switches and parallel requests depend on the workload processed by the Adabas System Coordinator Daemon - in particular, the number of system service calls that require TCB mode and the inherent parallelism of the workload. Aside from changing these aspects, little can be done in the configuration of Adabas System Coordinator for zIIP to influence the interplay between the SRB and the TCB.
  8. If the ZIIP Daemon runtime parameter is changed to NO during an Adabas System Coordinator Daemon session, requesting that the Daemon continue to run in TCB mode and not use zIIPs anymore, the then following processing will be charged to the TCB and counted under "Enclave GP time". The proportion of "Enclave zIIP time (%)" will decrease correspondingly. This percentage shows how much of the Adabas workload was actually executed on zIIPs, not how much could have been executed on zIIPs under other circumstances.