SMF Type 74 Record (Subtype 9) z/OS 2.1
This table shows the record layout for type 74 SMF records
It's easy to report on SMF 74 data! (Jump to sample reports)
Spectrum SMF Writer handles the difficult SMF record parsing for you automatically. You just specify which fields you want to see.
Spectrum SMF Writer also converts the arcane date and time fields and reformats them into an attractive report.
Record length. This field and the next field (total of four bytes) form the RDW (record descriptor word).
Segment descriptor (see record length field).
Bit - Meaning When Set
0 New record format
1 Subtypes used
3-6 Version indicators
7 System is running in PR/SM mode.
Record type 74 (X'4A').
Time since midnight, in hundredths of a second, that the record was moved into the SMF buffer.
Date when the record was moved into the SMF buffer, in the form 0cyydddF.
System identification (from the SMFPRMxx SID parameter).
Subsystem identification (‘RMF’).
Number of triplets in this record. A triplet is a set of three SMF fields (offset/length/number values) that defines a section of the record. The offset is the offset from the RDW.
Offset to RMF product section from RDW.
Length of RMF product section.
Number of RMF product sections.
Offset to PCIE Function data section.
Length of PCIE Function data section.
Number of PCIE Function data sections.
Offset to DMA data section.
Length of DMA data section.
Number of DMA data sections.
Offset to Hardware Accelerator data section.
Length of Hardware Accelerator data section.
Number of Hardware Accelerator data sections.
Offset to Hardware Accelerator Compression data section.
Length of Hardware Accelerator Compression data section.
Number of Hardware Accelerator Compression data sections.
RMF version number.
Product name (‘RMF’).
Time that the RMF measurement interval started, in the form 0hhmmssF, where hh is the hours, mm is the minutes, ss is the seconds, and F is the sign.
Date when the RMF measurement interval started, in the form 0cyydddF.
Duration of the RMF measurement interval, in the form mmsstttF where mm is the minutes, ss is the seconds, ttt is the milliseconds, and F is the sign. (The end of the measurement interval is the sum of the recorded start time and this field.)
Number of RMF samples.
Bit - Meaning When Set
1 Samples have been skipped
2 Record was written by RMF Monitor III
3 Interval was synchronized with SMF
Sampling cycle length, in the form 000ttttF, where tttt is the milliseconds and F is the sign (taken from CYCLE option). The range of values is 0.050 to 9.999 seconds.
MVS software level (consists of an acronym and the version, release, and modification level - ZVvvrrmm).
Indicates the type of processor complex on which data measurements were taken.
Value - Meaning
3 9672, zSeries 49 31 SMF73PRF 1 binary Processor flags.
Bit Meaning When Set
0 The system has expanded storage
1 The processor is enabled for ES connection architecture (ESCA)
2 There is an ES connection director in the configuration
3 System is running in z/Architecture mode
4 At least one zAAP is currently installed
5 At least one zIIP is currently installed
6 Enhanced DAT architecture available
PR/SM partition number of the partition that wrote this record.
SMF record level change number (X’6B’ for z/OS V2R1 RMF). This field enables processing of SMF record level changes in an existing release.
Interval expiration time token. This token can be used to identify other than RMF records that belong to the same interval (if interval was synchronized with SMF).
Offset GMT to local time (STCK format).
Offset to reassembly area relative to start of RMF product section.
Length of reassembly area. Area consists of a fixed header and a variable number of information blocks. Length depends on the record type/subtype, but is fixed for a specific type/subtype.
Reassembly area indicator.
Value - Meaning
0 Record is not broken.
1 Record is broken.
Note: This field is used to indicate whether an SMF record is a broken record. Therefore, offset (SMF74RAO) and length (SMF74RAL) are only valid if SMF74RAN = 1. A reassembly area is only present in broken records.
Original interval length as defined in the session or by SMF (in seconds).
SYNC value in seconds.
Projected gathering interval end (STCK format) GMT time.
Sysplex name as defined in parmlib member COUPLExx.
System name for current system as defined in parmlib member IEASYSxx SYSNAME parameter.
Total number of broken records built from the original large record.
Sequence number of this broken record. Every broken record built from the same large record must have a unique sequence number, it is in the range from 1 to SMF74RBR.
Offset to first reassembly information block relative to start of reassembly area header.
Length of reassembly information block.
Number of reassembly information blocks (same value as SMF74TRN in header section).
Total number of sections in the original large record. This field contains information of how many sections of a specific type were contained in the original SMF record. This field is a copy of the number field of the triplet in the original (non broken) record.
Position of the first of one or more consecutive sections described by this block as in the original record. Values in the range of 1 to SMF74RNN are valid for correct processing. A value of 0 will skip processing of this information block. This field provides information where the sections that are part of this broken record were placed in the original record before the split took place. The actual number of consecutive sections contained in this record is available from the actual triplet in the header extension.
RMF produces one PCIE Function data section for each PCIE function for which at least one of the following conditions are met:
There are one or more sections per PCIE function.
PCIE Function ID (PFID) for the PCIE function for which performance data is returned.
PFID function status merged over all MINTIME intervals for this reporting interval.
Final PFID function status at the end of this reporting interval. Bit Meaning When Set 0 PFID is de-allocated at the end of this interval. 1 PFID is re-allocated at the end of this interval. 2-15 Reserved.
Time in milliseconds for which no valid data was reported for the PCIE function within this reporting interval.
Device type for the PCIE function.
Device name for the PCIE function.
Job name of owner who allocated the PCIE function.
Address space ID of owner who allocated the PCIE function.
Physical channel identifier for the PCIE function.
Timestamp in STCK format, showing the last point in time when a PCIE function was allocated.
Time in milliseconds for which the PCIE function was allocated or was in status De-Allocate-Pending.
Sequence number for the last time the PCI operations counters or DMA read/write counters have been updated by the firmware.
Count of PCI Load operations for the PCIE function.
Count of PCI Store operations for the PCIE function.
Count of PCI Store Block operations for the PCIE function.
Count of PCI Refresh Translation operations for the PCIE function.
The DMA data blocks for all PCIE functions are grouped together in the record. To get to the DMA data block associated with this PCIE Function data section, skip over the number of DMA data blocks specified by this field, starting at the first DMA data block in the record.
Count of DMA data blocks allocated for this PCIE function data section.
The data blocks for all hardware accelerators are grouped together in the record. To get to the hardware accelerator data block associated with this PCIE Function data section, skip over the number of hardware accelerator data blocks specified by this field, starting at the first hardware accelerator block in the record.
Count of hardware accelerator data blocks allocated for this PCIE Function data section.
The data blocks for all hardware accelerators used for compression acceleration are grouped together in the record. To get to the hardware accelerator compression data block associated with this PCIE Function data section, skip over the number of hardware accelerator compression data blocks specified by this field, starting at the first hardware accelerator compression data block in the record.
Count of hardware accelerator compression data blocks allocated for this PCIE Function data section.
This section contains one DMA data block per PCIE Function data section. If no valid performance data is reported for a PCI function, no DMA data section exists for the PCIE Function data section.
DMA read counter that reports the number of bytes transferred from all defined DMA address spaces to the PCIE function.
DMA write counter that reports the number of bytes transferred from the PCIE function to all defined DMA address spaces.
This section contains up to one hardware accelerator data block per PCIE Function data section. This section only exists if the device name of the PCIE function provided in SMF749DEVN is set to Hardware Accelerator.
Hardware accelerator application type.
Hardware accelerator application description.
Total number of hardware accelerator requests that completed successfully.
Total number of hardware accelerator requests that completed with an error. Statistics for these requests are not included in the other fields of this data section.
Number of times that the adapter queue was full when a new request was submitted.
Total execution time of all requests in microseconds.
Sum of the squares of the individual execution times.
Total queue time of all requests in microseconds.
Sum of the squares of the individual queue times.
Total DMA reads in units of 256 bytes.
Total DMA writes in units of 256 bytes.
This section contains one hardware accelerator compression data block per hardware accelerator if the accelerator is used for compression acceleration. This data section only exists if the application name provided in SMF749FDSC is set to zEDC (zEnterprise Data Compression).
Total number of deflate input bytes.
Sum of the squares of the individual deflate input bytes.
Total number of deflate output bytes.
Sum of the squares of the individual deflate output bytes.
Total number of deflate requests.
Total number of inflate input bytes.
Sum of the squares of the individual inflate input bytes.
Total number of inflate output bytes.
Sum of the squares of the individual inflate output bytes.
Total number of inflate requests.
Total size of memory in megabytes allocated to the buffer pool.
Accumulated size of memory in megabytes for in-use buffers. To get the average buffer pool utilization, this value must be divided by the total number of requests.
The table above is based on the description provided by IBM in its "MVS Systems Management Facilities (SMF)" manual.
The sample SMF report below was created with Spectrum SMF Writer, the low-cost 4GL SMF report writer.
This report reads as input the SMF file and selects just the type 74 RMF Activity records with subtype = 4. (See SMF 74 record layout.) Each of these SMF records contains multiple Request Sections. We normalize these sections in order to easily print the same report information from each request section. We then print a report line for each Request Section, showing various statistics relating to synchronous and asynchronous requests during the interval. It also shows a count of certain requests for which no resource was available.
In this report, we take advantage of several of Spectrum's special formatting options. The BIZ ("blank if zero") option suppresses 0 values, which can clutter up a report. Also, since the SMF744SASQ field encompasses a wide range of values, we used a "scaled" type of picture to format it. Spectrum automatically displays a value with the appropriate K, M, G, ... suffix as necessary. This technique lets you display more data (in smaller columns) when it is not essential to know the exact value of a field.
We also used another technique to squeeze more data columns into the report. Since the identical Sysplex and System names appear for hundreds of consecutive lines, we moved those 2 fields from the detail report lines up into the page titles. We page-break on those fields to insure that the data on each page comes from a single Sysplex-System.
All of this with just a couple of dozen lines of code!
Why not install a Spectrum SMF Writer trial right now and start making your own SMF reports!