Split processing
If an operation is defined to allow overlapping, prior to starting operation processing, the Scheduler creates any new loads and places the appropriate number of items on each load. The Scheduler generates split load sizes in terms of a number of items or a number of loads, based on the OLTYPE code and OLVALUE in the JS19VR record:
OLTYPE | Calculation |
---|---|
0 | No overlap |
1 | load size=OLVALUE |
2 | # loads=100 ÷ OLVALUE |
3 | same as 2 |
4 | # loads=JOBSTEP.STEPEXP ÷ OLVALUE (Fixed) load size=OLVALUE ÷ JOBSTEP.STEPEXP (Per item) |
5 | same as 4 |
6 | parallel - no waiting |
7 | parallel - wait for all loads |
Load Splitting with Uneven Quantities
The job quantity may not be evenly divisible by the split size. If this occurs, the Scheduler processes the uneven remainder of items by creating a new load.
For example, assume the job quantity is 100 and the load split size is 25. The number of whole loads is determined by dividing 100 by 25, which results in four loads of 25 each. But if the load split size were 30, there will be 3 whole loads of 30 and a remainder of 10. The Scheduler places the remaining items in a fourth, partial load of 10.
Multiple Resources in Resource Group
If a resource group contains multiple resources, the loads can potentially allocate all resources and begin processing at the operation concurrently. For example, if you have 2 loads moving through Operation 10, where the required resource group contains 2 resources, each load can allocate one of the two resources (according to the selection rules).
A load being split may hold resources at the time it arrives to the split phase. The Scheduler attempts to evenly distribute the resources held between the original load and the newly created loads. If there are excess units of a resource held, they are associated with the last load released from the operation. If there are not enough units of a resource to be spread evenly among the loads, the last load receives all of the units.