Layout of channel initiator SMF type 115 records
The layout of channel initiator statistics data (SMF type 115, subtype 231) records is described in this topic.
Self-defining section
The self-defining section for the channel initiator statistics data follows the standard SMF header. It is structured in the standard triplet format. The format of the triplets is described in structure qwsx in the C programming language header file thlqual.SCSQC370(CSQDSMFC), and in assembler macro thlqual.SCSQMACS(CSQDQWSX).
Table 1 shows the format of the self-defining section.
Offset: Dec | Offset: Hex | Type | Length | Name | Description |
---|---|---|---|---|---|
0 | 0 | Integer | 4 | QWSX0PSO | Offset from the start of the SMF record to the first instrumentation standard header (QWHS) |
4 | 4 | Integer | 2 | QWSX0PSL | Length of the QWHS |
6 | 6 | Integer | 2 | QWSX0PSN | Number of instances of QWHS |
8 | 8 | Integer | 4 | QWSX0R1O | Offset from the start of the SMF record to the first channel initiator control information block (QCCT) |
12 | C | Integer | 2 | QWSX0R1L | Length of the QCCT |
14 | E | Integer | 2 | QWSX0R1N | Number of instances of QCCT |
16 | 10 | Integer | 4 | QWSX0R2O | Offset from the start of the SMF record to the first dispatcher task block (QCT_DSP) |
20 | 14 | Integer | 2 | QWSX0R2L | Length of the QCT_DSP |
22 | 16 | Integer | 2 | QWSX0R2N | Number of instances of QCT_DSP |
24 | 18 | Integer | 4 | QWSX0R3O | Offset from the start of the SMF record to the first adapter task block (QCT_ADP) |
28 | 1C | Integer | 2 | QWSX0R3L | Length of the QCT_ADP |
30 | 1E | Integer | 2 | QWSX0R3N | Number of instances of QCT_ADP |
32 | 20 | Integer | 4 | QWSX0R4O | Offset from the start of the SMF record to the first SSL task block (QCT_SSL) |
36 | 24 | Integer | 2 | QWSX0R4L | Length of the QCT_SSL |
38 | 26 | Integer | 2 | QWSX0R4N | Number of instances of QCT_SSL |
40 | 28 | Integer | 4 | QWSX0R5O | Offset from the start of the SMF record to the first DNS task block (QCT_DNS) |
44 | 2C | Integer | 2 | QWSX0R5L | Length of the QCT_DNS |
46 | 2E | Integer | 2 | QWSX0R5N | Number of instances of QCT_DNS |
Typically one record contains all the data. If there are a large number of dispatchers, adapters, or SSL tasks, the data is split over more than one record.
If this happens, the count of instances of some type of tasks can be zero, and information about a group of tasks can be spread across multiple records. The channel initiator control information block (QCCT) is only present in the first record. For example the data could be split between two SMF records like this:
Count | First record | Last record |
---|---|---|
QWHS | 1 | 1 |
QCCT | 1 | 0 |
QCT_DSP | 50 | 5 |
QCT_ADP | 0 | 10 |
QCT_SSL | 0 | 3 |
QCT_DNS | 0 | 1 |
This example shows that there were 55 dispatcher TCBs running during the SMF interval.
Instrumentation standard header (QWHS)
The format of the QWHS is described in structure qwhs in the C programming language header file thlqual.SCSQC370(CSQDSMFC), and in assembler macro thlqual.SCSQMACS(CSQDQWHS). It contains the following key fields that are relevant to channel initiator SMF 115 records:Name | Length | Description |
---|---|---|
QWHSNDA | 1 byte | Number of self-defining sections |
QWHSSSID | 4 bytes | Subsystem name |
QWHSSMFC | 1 bit | Indicates whether there are multiple SMF records containing information for this interval. If this bit is on, information for this interval is continued in further SMF records. If this bit is off, this is the last or only record. The subsystem ID in QWHSSSID, and the SMF interval start time in QWHSTIME, can be used to group multiple records for the same interval. |
QWHSTIME | 8 bytes | Local time of the start of the interval in STCK format |
QWHSDURN | 8 bytes | Duration from the start of the interval to the end of the interval in STCK format |
QWHSSTCK | 8 bytes | End of the interval in UTC in STCK format |