Transaction wait (suspend) times

The CMF performance class record provides a breakdown of the transaction suspend (wait) time into separate data fields. You can use these to calculate various wait times.

The performance data fields listed in Table 1 record the elapsed time spent waiting for specific types of I/O operation. For example, field 009 records the elapsed time waiting for terminal I/O.

The elapsed time includes the time for the I/O operation, the time for the access method to complete the outstanding event control block, and the subsequent time until the waiting CICS® transaction is redispatched.

Table 1. Performance class wait (suspend) fields
Group Name Field ID Field Name Description
DFHTERM 009 TCIOWTT Terminal I/O wait time
DFHJOUR 010 JCIOWTT Journal I/O wait time
DFHTEMP 011 TSIOWTT Temporary storage I/O wait time
DFHFILE 063 FCIOWTT File I/O wait time
DFHTERM 100 IRIOWTT Interregion I/O wait time
DFHDEST 101 TDIOWTT Transient data I/O wait time
DFHTASK 123 GNQDELAY Global ENQ delay time
DFHTASK 128 LMDELAY Lock Manager delay time
DFHTASK 129 ENQDELAY Local ENQ delay time
DFHTERM 133 LU61WTT LU 6.1 I/O wait time
DFHTERM 134 LU62WTT LU 6.2 I/O wait time
DFHFEPI 156 SZWAIT FEPI suspend time
DFHTASK 171 RMISUSP Resource manager interface (RMI) suspend time
DFHFILE 174 RLSWAIT RLS File I/O wait time
DFHFILE 176 CFDTWAIT Coupling Facility data tables server I/O wait time
DFHSYNC 177 SRVSYWTT Coupling Facility data tables server sync point and resynchronization wait time
DFHTEMP 178 TSSHWAIT Shared temporary storage I/O wait time
DFHTASK 181 WTEXWAIT EXEC CICS WAIT EXTERNAL wait time
DFHTASK 182 WTCEWAIT EXEC CICS WAITCICS and WAIT EVENT wait time
DFHTASK 183 ICDELAY Interval Control delay time
DFHTASK 184 GVUPWAIT Dispatchable Wait wait time
DFHDATA 186 IMSWAIT IMS DBCTL wait time
DFHDATA 187 DB2RDYQW DB2® ready queue wait time
DFHDATA 188 DB2CONWT DB2 connection time
DFHTASK 191 RRMSWAIT RRMS/MVS indoubt wait time
DFHTASK 192 RQRWAIT Request Receiver wait time
DFHTASK 193 RQPWAIT Request Processor wait time
DFHTASK 195 RUNTRWTT CICS BTS run process/activity synchronous wait time
DFHSYNC 196 SYNCDLY Sync point delay time
DFHSOCK 241 SOIOWTT Inbound Socket I/O wait time
DFHTASK 247 DSCHMDLY CICS change TCB mode delay time
DFHTASK 250 MXTOTDLY CICS L8 and L9 mode open TCB delay time
DFHTASK 254 JVMSUSP JVM suspend time
DFHTASK 268 DSTCBMWT TCB mismatch wait time
DFHTASK 279 DSMMSCWT MVS™ storage constraint wait time
DFHTASK 281 MAXSTDLY CICS SSL TCB delay time
DFHTASK 282 MAXXTDLY CICS XP TCB delay time
DFHTASK 283 MAXTTDLY CICS JVM server thread TCB delay time
DFHTASK 285 PTPWAIT 3270 bridge partner wait time
DFHSOCK 299 SOOIOWT Outbound Socket I/O wait time
DFHSOCK 300 ISIOWTT IS I/O wait time
DFHSOCK 319 ISALWTT IPIC session allocation wait time
DFHTERM 343 TCALWTT MRO, LU6.1, and LU6.2 session allocation wait time
DFHDATA 396 WMQGETWT MQ GETWAIT wait time
DFHTASK 401 JVMTHDWT JVM server thread wait time. This does not apply to Liberty JVM servers.
DFHDEST 403 TDILWTT Transient Data intrapartition lock wait time
DFHDEST 404 TDELWTT Transient Data extrapartition lock wait time
DFHFILE 426 FCXCWTT File control wait time for exclusive control of a VSAM control interval
DFHFILE 427 FCVSWTT File control wait time for a VSAM string
DFHTASK 429 DSAPTHWT Dispatcher allocate pthread wait time

Figure 1 shows an example of the relationship between a typical transaction wait time field, and the transaction's suspend time, dispatch time, processor, and dispatch wait time fields. The transaction has a period of suspend time, which is the time between two periods of dispatch and processor time. The period of suspend time is equal to the total of all the relevant wait times. The period of suspend time includes the dispatch wait, which ends when the suspend time ends and the dispatch and processor time starts.

Figure 1. Wait (suspend) time relationships
This figure is described in the accompanying text.
You can use the CMF suspend time and wait time measurements to perform accurate calculations on the suspend time. For example, to calculate the total I/O wait time, add the values of the fields in the following list:
  • Terminal control I/O wait
  • Temporary storage I/O wait
  • Shared temporary storage I/O wait
  • Transient data I/O wait
  • Journal (MVS logger) I/O wait
  • File control I/O wait
  • RLS file I/O wait
  • Coupling Facility data table I/O wait
  • Inbound Socket I/O wait
  • IS I/O wait time
  • Outbound Socket I/O wait
  • Interregion (MRO) I/O wait
  • LU 6.1 TC I/O wait
  • LU 6.2 TC I/O wait
  • FEPI I/O wait
To calculate the total other wait time, add the values of the fields in the following list:
  • First dispatch delay. This field includes the MXT and TRANCLASS first dispatch delay fields.
  • Local ENQ delay
  • Global ENQ delay
  • Interval control delay
  • Lock manager delay
  • Wait external wait
  • EXEC CICS WAITCICS and EXEC CICS WAIT EVENT wait
  • CICS BTS run synchronous wait
  • CFDT server synchronous wait
  • Request Receiver wait time
  • Request Processor wait time
  • Syncpoint delay time
  • CICS L8 and L9 mode open TCB delay time
  • CICS SSL TCB delay time
  • CICS JVM server thread TCB delay time
  • CICS XP TCB delay time
  • CICS change-TCB mode delay time
  • RRMS/MVS wait
  • 3270 bridge partner wait
  • TCB mismatch wait time
  • JVM server thread wait time
  • MVS storage constraint wait time
  • Intrapartition transient data lock wait time
  • Extrapartition transient data lock wait time
  • File control wait time for exclusive control of a VSAM control interval
  • File control wait time for a VSAM string
  • IPIC session allocation wait time
  • MRO, LU6.1, and LU6.2 session allocation wait time
  • Dispatchable waits wait
  • Dispatcher allocate pthread wait time
To determine the uncaptured wait time, use the following calculation:
 Uncaptured wait time =  (Suspend - (total I/O wait time + total other wait time))
The CMF performance class data also provides the following important transaction timing measurements:
  • The Program load time is the program fetch time (dispatch time) for programs invoked by the transaction. See Program load time.
  • The Exception wait time is the accumulated time from the exception conditions as measured by the CMF exception class records. For more information, see Exception class data: listing of data fields.
  • The RMI elapsed time is the elapsed time the transaction spent in all Resource Managers invoked by the transaction using the Resource Manager Interface (RMI). See RMI elapsed and suspend time.
  • The JVM elapsed time is the elapsed time the transaction spent in the Java™ Virtual Machine (JVM) for the Java programs invoked by the transaction. See JVM elapsed time and suspend time.
  • The JVM initialization elapsed time is the elapsed time the transaction spent initializing the Java Virtual Machine (JVM) environment for all the Java programs invoked by the transaction.
  • The Syncpoint elapsed time is the elapsed time the transaction spent processing a sync point. See Syncpoint elapsed time.