Batching requests (MROBTCH)
Certain events in a region can be accumulated in a batch before posting, until the number specified in the MROBTCH system initialization parameter is reached (or ICV times out).
- VSAM physical I/O completion
- Request completion carried out as a subtask on the CO TCB (mostly VSAM, and if SUBTSKS=1 is specified)
- DL/I request completion implemented through DBCTL
quasi-reentrantmode TCB.
Effects of changing the default value of MROBTCH
- Up to [(n-1)*100/n]% saving in the processor usage for waiting and posting of that TCB. For example, for n=2, 50% savings might be achieved, for n=3, 66% savings, or for n=6, 83% savings.
- An average cost of (n+1)/2 times the average arrival time for each request batched.
- Increased response time might cause an increase in overall virtual storage usage as the average number of concurrent transactions increases.
- In heavily loaded systems at peak usage, some batching can happen as a natural consequence of queuing for a busy resource. Using a low MROBTCH value greater than one might then decrease any difference between peak and off-peak response times.
Setting MROBTCH higher than 6 is not recommended as the decreasing additional processor saving is unlikely to be worth the further increased response time.
You require a relatively low value of MROBTCH for ICV to maintain reasonable response time during periods of low utilization.
Setting a suitable batch value
Depending on the amount of response time degradation you can afford, you can set MROBTCH to different values. Use the CICS®-SM perspective of the CICS Explorer® () or use EXEC CICS SET SYSTEM MROBATCH to arrive at a suitable batch value for a given workload.
For programming information about the EXEC CICS system programming commands, see System commands.
During slow periods, the ICV unconditionally dispatches the region, even if the batch is not complete and provides a minimum delay. In this case, set ICV to 500 milliseconds in each region.