Dispatcher tasks
Example data for the dispatcher tasks, and information about how to interpret the data.
Example data
Task, Type, Requests, Busy %, CPU used, CPU %, "avg CPU", "avg ET" , , , , Seconds, , uSeconds, uSeconds 0, DISP, 26587, 0.4, 0.592463, 0.1, 22, 127 1, DISP, 26963, 0.3, 0.588092, 0.1, 22, 112 2, DISP, 864329, 2.7, 2.545668, 0.3, 3, 28 3, DISP, 26875, 0.4, 0.590825, 0.1, 22, 120 4, DISP, 26874, 0.4, 0.603285, 0.1, 22, 123 Summ, DISP, 971628, 0.8, 4.920332, 0.1, 5, 38The example data shows that there were five dispatchers. A channel is associated with a dispatcher, and the work is distributed across all the dispatchers. This example shows that one dispatcher is processing more requests than other dispatchers. This is normal, as some channels might stop, so the dispatcher is processing fewer channels, and some channels can be busier than others.
- 4.9 seconds of CPU were used by the dispatchers.
- The average request used 5 microseconds of CPU and took 38 microseconds elapsed time.
- A dispatcher is used to send and receive data over a communications network, and this is not usually dependent on external events. The average elapsed time should, therefore, be close to the average CPU time used. If the CHINIT is delayed due to lack of CPU, then the ratio of average Elapsed Time to average CPU time is much larger, compared to when the CHINIT is not delayed for CPU.
- The average CPU used per request depends on the message traffic, for example, bigger messages use more CPU than smaller messages.
- Duration: qwhs.qwhsdurn
- Requests : qctreqn
- Busy %: qcteltm and duration
- CPU used: qctcptm
- CPU %: qctcptm and duration
- Average CPU: qctcptm and qctreqn
- Average ET: qcteltm and qctreqn
Channels have an affinity to a dispatcher, so you might find that some dispatchers process many more requests than another dispatcher.
We can use the ALTER QMGR CHIDISPS() command to change the number of dispatchers used. Any change comes into effect the next time the CHINIT is started.