TAPE 12
CPU 80
WORK-SPACE 3000
To eliminate bottlenecks and maximize throughput, a site can quantify processing power and assign it a resource name, such as CPU or LPU (logical processing units). The more powerful the CPU, the greater the maximum quantity that can be assigned to it.
The RESOURCE parameter is used to specify the quantity of a resource required by the job.
Before a job is submitted, Control-M verifies that the required quantities of resources, defined through RESOURCE statements, are available, that is, that they are not in use by another job:
Resource Allocation in Multi-CPU Environments
In multi-CPU environments, several resource allocation possibilities exist.
One possibility is to operate as if there is one large CPU and resource pool. In this case, no logical differentiation between CPUs is made, and the Control-M monitor assigns resources, including CPU processing power, from the total resources available.
Another possibility is to differentiate between CPUs and optionally to logically associate quantities of resources with specific CPUs.
This is generally achieved through the use of common identifiers, such as a suffix.
For example, suppose a site has three CPUs of differing processing capability. The following representative resources and quantities might be defined in the IOA Resources file:
CPU-A 50
CPU-B 75
CPU-C 100
In this example, it might also be desired to logically categorize other resources according to CPU. For example, if 12 tape drives are available, the following resources and quantities might also be defined in the IOA Resources file:
TAPE-A 3
TAPE-B 4
TAPE-C 5
If this kind of differentiation is used, different resources in the job scheduling definition can be specified with different suffixes, and the job still runs. For example, a quantity of CPU-A can be specified along with a quantity of TAPE-B.
Rather than specifying a particular identifier when requesting a resource, resources can be requested generically by specifying a $ in place of the identifier, for example CPU-$ or TAPE-$. The $ indicates to Control-M that it must select a specific resource, that is, a resource with an identifier, to replace the generic resource, that is, the resource with the $.
Note: If you use the $ to request generic resources, the $ must appear at the end of the resource name.
If a $ is specified for all required resource identifiers, the Control-M monitor does not assign the resources unless it can assign all resources with the same identifier, for example, all resources with identifier A or all resources with identifier B.
When using the generic $ identifier, you can use one of the following methods to ensure a specific CPU is used for processing the job:
Control-M Exit CTMX004 can also be used to help prevent bottlenecks caused by resource contention.
For more information on Control-M exits CTMX002 and CTMX004, see the INCONTROL for z/OS Administrator Guide.
RESOURCE Example 1A
There are 12 tape drives in the data center connected to a single computer. Two tape drives must always remain free for emergencies. Therefore, only 10 drives can be used for production. The defined available quantity is set as follows: TAPE 0010.
Any user (job) wanting to use tape drives must specify the number of tapes required in the job parameters.
Figure 287 RESOURCE Parameter – Example 1A
JOB: EBDINPUT LIB CTM.PROD.SCHEDULE TABLE: EBDPROD
COMMAND ===> SCROLL===> CRSR
+-------------------------------------------------------------------------+
SCHENV SYSTEM ID NJE NODE
SET VAR
CTB STEP AT NAME TYPE
DOCMEM EBDINPUT DOCLIB CTM.PROD.DOC
==========================================================================
DAYS DCAL
AND/OR
WDAYS WCAL
MONTHS 1- Y 2- Y 3- Y 4- Y 5- Y 6- Y 7- Y 8- Y 9- Y 10- Y 11- Y 12-Y
DATES
CONFCAL SHIFT RETRO Y MAXWAIT 04 D-CAT
MINIMUM PDS
DEFINITION ACTIVE FROM UNTIL
=========================================================================
IN
CONTROL
RESOURCE TAPE 0002
PIPE CTM.PROD.PIPE
FROM TIME + DAYS UNTIL TIME + DAYS
DUE OUT TIME + DAYS PRIORITY SAC CONFIRM
COMMANDS: EDIT, DOC, PLAN, JOBSTAT 11.17.00
Control-M checks if there are two tape drives available. If there are, the tape drives are "given" to the job. The total number of free tapes is now eight. When the job finishes executing, the tape drives are returned to the general pool.
Suppose that many jobs are using tapes, and the available quantity is only one. A job that requires two tape drives must wait. The job is not submitted until the required number of tapes are available.
An authorized person decides that only one tape unit is needed for emergencies and adds one tape unit to the global quantity available for use. Now the maximum number of tape drives is eleven, and the number of available tape drives is two. The job is submitted.
RESOURCE Example 1B
The data center discussed in the previous example is expanding. It now has two computers and 20 tape drives. The tape drive distribution is:
Currently, CPU1 is connected to four transferable drives, one transferable drive is connected to CPU2, and one transferable drive is out of order. The situation is presented to Control-M as follows:
TAPE1 12
TAPE2 7
A job requests three tape drives, on any computer.
Figure 288 RESOURCE Parameter – Example 1B
JOB: EBDINPUT LIB CTM.PROD.SCHEDULE TABLE: EBDPROD
COMMAND ===> SCROLL===> CRSR
+------------------------------------------------------------------------+
SCHENV SYSTEM ID NJE NODE
SET VAR
CTB STEP AT NAME TYPE
DOCMEM EBDINPUT DOCLIB CTM.PROD.DOC
========================================================================
DAYS DCAL
AND/OR
WDAYS WCAL
MONTHS 1- Y 2- Y 3- Y 4- Y 5- Y 6- Y 7- Y 8- Y 9- Y 10- Y 11- Y 12-Y
DATES
CONFCAL SHIFT RETRO Y MAXWAIT 04 D-CAT
MINIMUM PDS
DEFINITION ACTIVE FROM UNTIL
========================================================================
IN
CONTROL
RESOURCE TAPE$ 0003
PIPE CTM.PROD.PIPE
FROM TIME + DAYS UNTIL TIME + DAYS
DUE OUT TIME + DAYS PRIORITY SAC CONFIRM
COMMANDS: EDIT, DOC, PLAN, JOBSTAT 11.17.00
The result is that the available quantity of either TAPE1 or TAPE2 is reduced by three.
The Control-M scheduling algorithm makes the optimal decision as to which of the two computers to send the job. It is possible to intervene in this selection process. For more information, see user Exit CTMX004 in the INCONTROL for z/OS Administrator Guide.
RESOURCE Example 1C
A job requests three tape drives on CPU1.
Figure 289 RESOURCE Parameter – Example 1C
JOB: EBDINPUT LIB CTM.PROD.SCHEDULE TABLE: EBDPROD
COMMAND ===> SCROLL===> CRSR
+-------------------------------------------------------------------------+
SCHENV SYSTEM ID NJE NODE
SET VAR
CTB STEP AT NAME TYPE
DOCMEM EBDINPUT DOCLIB CTM.PROD.DOC
=========================================================================
DAYS DCAL
AND/OR
WDAYS WCAL
MONTHS 1- Y 2- Y 3- Y 4- Y 5- Y 6- Y 7- Y 8- Y 9- Y 10- Y 11- Y 12-Y
DATES
CONFCAL SHIFT RETRO Y MAXWAIT 04 D-CAT
MINIMUM PDS
DEFINITION ACTIVE FROM UNTIL
=========================================================================
IN
CONTROL
RESOURCE TAPE1 0003
PIPE CTM.PROD.PIPE
FROM TIME + DAYS UNTIL TIME + DAYS
DUE OUT TIME + DAYS PRIORITY SAC CONFIRM
COMMANDS: EDIT, DOC, PLAN, JOBSTAT 11.17.00
The result is that the available quantity of the resource TAPE1 is reduced by three.
The tape drive that was out of order has been fixed. An operator makes it available for use by jobs running on CPU2 by correcting the global available quantities to:
TAPE2 8
The shift manager decides to assign two tapes from CPU1 to CPU2. The new situation as seen by Control-M:
TAPE1 10
TAPE2 10
Parent Topic |