Programming Interface Information:
The Monitor Records are intended Programming Interfaces that
allow the customer to write programs to obtain services of z/VM.
Control Block Contents
DSECT NAME - SYTCUP FUNCTION - Map a Monitor record. LOCATED BY - Through the Monitor Control Area REFERENCED CONTROL BLOCKS - MRRECHDR Monitor Record Header NAME - MRSYTCUP DESCRIPTIVE NAME - Monitor Sample Record Domain 0 - System Domain Record 16 - CPU Utilization Data in a Logical Partition DESCRIPTION - Utilization data (CPU/core) for an individual logical partition. Also included are data for each logical CPU/core in the partition. This monitor record is PER CORE if MT is enabled in the partition that this record is reporting as indicated by the SYTCUP_LCXPPSMT field in this record. NOTES: -- A separate record is generated for each logical partition reported by the underlying hypervisor. However, if the HMC Global Performance Data setting is disabled, you will receive a record for only your partition. -- The data for a partition with a large number of CPUs/cores may not fit in a single record. In this case, the data spans a series of records. See descriptions of SYTCPU_CALMORE and SYTCPU_CALNREC below. -- Each of these records might make different use of the terms "CPU/core/thread" depending on the Multithreading (MT) settings of the reported partition (see definitions below). -- When a field in this record uses the term "CPU/core", the meaning of the field changes based on whether Multithreading (MT) is enabled for the partition whose data is being reported in the record. When MT is not enabled, a physical core contains only one CPU: - CPU : central processing unit (processor). - CORE : physical unit containing one CPU. In this environment the core has 1 thread, the term "thread" is not used, and the term "CPU" is generally favored over the term "core". When MT is enabled, a physical core contains one or more CPUs (aka "threads"): - CPU : central processing unit (processor). Identified by CPU address which consists of core ID and thread ID. - CORE : physical unit containing one or more CPUs (aka "threads"). All CPUs of a core have the same CPU type. - THREAD: synonym for a CPU that is a member of a core. Each thread on a core has a distinct thread ID (TID), numbered from 0 up to the maximum thread ID available on the core. -- SYTCUP_CALCPUOF and SYTCUP_CALCPULN should always be used to locate the SYTCUP_CPUDATA entries. Their values may be subject to change.
MRSYTCUP Control Block Contents
Offsets Dec Hex Type Len Name (Dim) Description 0 0 Structure 80 SYTCUP Start of monitor record 0 0 Character 0 SYTCUP_MRHDR Record header. See MRRECHDR for details. 0 0 Character 20 MRHDR 0 0 Unsigned 2 MRHDRLEN record length in bytes 2 2 Unsigned 2 MRHDRZER field of zeros 4 4 Unsigned 1 MRHDRDM domain identifier 5 5 Unsigned 1 * 6 6 Unsigned 2 MRHDRRC record identifier 8 8 Character 8 MRHDRTOD Time at which this record was built. In time-of-day (TOD) clock format. See IBM System 370 XA Principle of Operation for explanation of format. 16 10 Character 4 * 20 14 Character 0 MRHDR_END End of header 20 14 Character 8 SYTCUP_LCUPNAME Logical partition name 28 1C Unsigned 1 SYTCUP_LCUPPNUM Logical partition number as assigned by LPAR. 29 1D Bitstring 1 SYTCUP_CALFLGS Flag byte 1... .... SYTCUP_CALPTIS When set to ON, this logical partition is the one that fetched the logical CPU/core utilization data .1.. .... SYTCUP_LCXPUPVA When set to ON, the user partition ID (SYTCUP_LCXPUPID) is valid. ..1. .... SYTCUP_CALMORE When set to ON, indicates an additional MRSYTCUP record is created for this LPAR. When OFF, indicates this is the only or last MRSYTCUP record for this LPAR. ...1 .... SYTCUP_SYSGPRFD When set to ON, indicates Global Performance Data (GPD) is enabled for this partition. .... 1... * .... .1.. SYTCUP_CALBUSY When set to ON, indicates that a busy condition was encountered when attempting to acquire current processor utilization data. To avoid delays, reported data uses cached values that were obtained at the time indicated in SYTCUP_LCUTCTOD. .... ..1. * .... ...1 * 30 1E Unsigned 1 SYTCUP_CALNREC The number of SYTCUP_CPUDATA entries in this record. A SYTCUP_CPUDATA entry is created for each logical CPU/core in the partition. For the total number of logical CPUs/cores in the partition see SYTCUP_LCUPCPCT. 31 1F Unsigned 1 SYTCUP_LCUPCPCT Total number of logical CPUs/cores in this partition. If zero, this partition is not active. Includes secondary CPUs/cores if SYTCUG_LCUT204E is on. 32 20 Signed 2 SYTCUP_CALCPUOF Byte offset, relative from the start of this record, to the first SYTCUP_CPUDATA entry of the table 34 22 Signed 2 SYTCUP_CALCPULN Length in bytes of a SYTCUP_CPUDATA entry 36 24 Character 8 SYTCUP_LCUTCTOD Time-of-day, in TOD clock format, that the logical CPU/core information was fetched. 44 2C Character 16 SYTCUP_LCPTYPE CPU/Core TYPE as from EBCDIC NAME TABLE. This table is provided by the hardware and describes the type of logical CPU/core. When SYTCUG_LCUT204E is on, this field does not contain a value; instead, the CPU/core type is available per logical CPU/core in SYTCUP_LCXCPTYP. 60 3C Unsigned 1 SYTCUP_LCXPUPID User partition ID UPID is valid if SYTCUP_LCXPUPVA is ON. Otherwise set to zero. This is the UPID assigned by the user in the image profile and is seen as the partition identifier in the activation profile. 61 3D Bitstring 1 SYTCUP_LCXPMTST Partition multithreading status 1... .... * .1.. .... * ..1. .... * ...1 1111 SYTCUP_LCXPPSMT Bits 3-7 = Maximum supported TID (range 1-31, indicating 2-32 threads/core). Zero if MT not enabled in partition. 62 3E Character 2 * Reserved for IBM use 64 40 Character 8 SYTCUP_LCXHGPNM LPAR Group Name. Binary zeros when undefined. EBCDIC and padded on the left when defined. 72 48 Character 8 * Reserved for IBM use 80 50 Character 0 * Table of SYTCUP_CPUDATA entries, one for each logical CPU/core described by this record. SYTCUP_CALCPUOF, SYTCUP_CALCPULN and SYTCUP_CALNREC should be used to locate this table.
CPU/core Utilization data for an individual logical CPU/core. There is a separate entry for each logical CPU/core in the partition.
Offsets Dec Hex Type Len Name (Dim) Description 0 0 Structure 64 SYTCUP_CPUDATA Logical CPU/core data entry 0 0 Unsigned 2 SYTCUP_LCUCPUID Logical CPU address/core ID 2 2 Unsigned 2 SYTCUP_LCUCWGHT Processing weight as assigned to the partition. Value is in range of 0 to 999 except that it is set to 65535 (x'FFFF') if a physical CPU/core is dedicated to this logical CPU/core. 4 4 Bitstring 1 SYTCUP_LCUCFLGS CPU/Core Information flag byte 1... .... SYTCUP_LCUCWCPL Wait completion flag. ON = 'YES' has been specified in the Wait Completion option of the logical partition controls. Logical CPU/core dispatching is to be done without regard to logical CPU/core wait states. OFF = CPU/Core time not used by one logical CPU/core may be given to another logical CPU/core or logical partition. .1.. .... SYTCUP_LCUCCAPP Initial capping flag. Indicates whether the initial capping checkbox is selected in the partition's activation profile. ..1. .... SYTCUP_LCXCCONL CPU/Core-online flag. ON if logical CPU/core currently online. Valid only if enhanced LPAR support available (SYTCUG_LCUT204A is ON and SYTCUG_LCUT204S is OFF). ...1 .... * .... 1... * .... .1.. * .... ..1. * .... ...1 * 5 5 Bitstring 1 SYTCUP_CALFLAG Partition capping flag. 1... .... SYTCUP_CALFLAGCPU Indicates whether absolute capping is in effect for CPUs/cores of this type. .1.. .... SYTCUP_CALFLAGGRP Indicates whether LPAR Group capping is in effect for CPUs/cores of this type. ..1. .... * ...1 .... * .... 1... * .... .1.. * .... ..1. * .... ...1 * 6 6 Character 8 SYTCUP_LCUCACTM Accumulated number of microseconds during which a physical CPU/core was assigned to this logical CPU/core. Accumulation continues (i.e., is not reset) while the logical CPU/core is defined. 14 E Character 8 SYTCUP_LCUCLPTM Accumulated number of microseconds, excluding LPAR-management time, during which a physical CPU/core was assigned to this logical CPU/core. This value is not reset while the logical CPU/core is defined. 22 16 Character 16 SYTCUP_LCXCPTYP CPU/Core type as EBCDIC string. Contains a value only if enhanced LPAR monitor support with support for secondary CPUs/cores is available as indicated by SYTCUG_LCUT204E. 38 26 Unsigned 2 SYTCUP_LCXCCWT Current weight for this logical partition. The weight is in the range 0-999; except that it is 65,535 (x'FFFF') if this logical partition uses dedicated CPUs/cores. This field is valid only when SYTCUG_LCUT204A is on. 40 28 Character 4 SYTCUP_LCXCTYCP if absolute capping is in effect for CPUs/cores of this type, the value in this field expresses the absolute cap amount in units of hundredths of physical CPUs'/cores' worth of power. 44 2C Unsigned 4 SYTCUP_CALCAPV if absolute capping is in effect for CPUs/cores of this type, the value in this field expresses the absolute cap amount in units such that X'00010000' represents one physical CPU's/cores's worth of power. 48 30 Character 8 SYTCUP_LCXCMTIT MT Idle Time. Aggregate idle time in microseconds for all CPUs of a dispatched core. Includes the time that an individual dispatched CPU of a core is in any of these states: enabled wait, disabled wait, stopped state, check-stop state, or program interrupt loop. Valid only if MT is enabled in this partition. 56 38 Unsigned 4 SYTCUP_LCXHGPCP LPAR Group Absolute Capacity Cap value for this CPU type when nonzero. This field will be nonzero only when LCXHGPNM is nonzero and a cap is defined for the Hardware Group for this CPU type. When nonzero, contains a 32-bit unsigned binary integer whose value is a count of hundredths of CPU/core units of type Ctidx. 60 3C Unsigned 4 SYTCUP_CALGCAPV if LPAR Group Capping is in effect for CPUs/cores of this CPU type, the value in this field expresses the absolute cap amount in scaled units such that X'00010000' represents one physical CPU's/cores's worth of power. 64 40 Character 0 SYTCUP_END
MRSYTCUP Cross Reference
Hex Hex Name Offset Length Value MRHDR 0 20 MRHDR_END 14 0 MRHDRDM 4 1 MRHDRLEN 0 2 MRHDRRC 6 2 MRHDRTOD 8 8 MRHDRZER 2 2 SYTCUP 0 80 SYTCUP_CALBUSY 1D 04 SYTCUP_CALCAPV 2C 4 SYTCUP_CALCPULN 22 2 SYTCUP_CALCPUOF 20 2 SYTCUP_CALFLAG 5 1 SYTCUP_CALFLAGCPU 5 80 SYTCUP_CALFLAGGRP 5 40 SYTCUP_CALFLGS 1D 1 SYTCUP_CALGCAPV 3C 4 SYTCUP_CALMORE 1D 20 SYTCUP_CALNREC 1E 1 SYTCUP_CALPTIS 1D 80 SYTCUP_CPUDATA 0 64 SYTCUP_END 40 0 SYTCUP_LCPTYPE 2C 16 SYTCUP_LCUCACTM 6 8 SYTCUP_LCUCCAPP 4 40 SYTCUP_LCUCFLGS 4 1 SYTCUP_LCUCLPTM E 8 SYTCUP_LCUCPUID 0 2 SYTCUP_LCUCWCPL 4 80 SYTCUP_LCUCWGHT 2 2 SYTCUP_LCUPCPCT 1F 1 SYTCUP_LCUPNAME 14 8 SYTCUP_LCUPPNUM 1C 1 SYTCUP_LCUTCTOD 24 8 SYTCUP_LCXCCONL 4 20 SYTCUP_LCXCCWT 26 2 SYTCUP_LCXCMTIT 30 8 SYTCUP_LCXCPTYP 16 16 SYTCUP_LCXCTYCP 28 4 SYTCUP_LCXHGPCP 38 4 SYTCUP_LCXHGPNM 40 8 SYTCUP_LCXPMTST 3D 1 SYTCUP_LCXPPSMT 3D SYTCUP_LCXPUPID 3C 1 SYTCUP_LCXPUPVA 1D 40 SYTCUP_MRHDR 0 0 SYTCUP_SYSGPRFD 1D 10
This information is based on z/VM V6R4.0.
Last updated on 5 May 2019 at 19:28:11.
Copyright IBM Corporation, 1990, 2019