7. PARAMETERS › 7.2 Unit Level Parameters › 7.2.1 Component Options (VMCOPS) › 7.2.1.9 WORK, MULTWORK, and NOMULT Statements
7.2.1.9 WORK, MULTWORK, and NOMULT Statements
WORK
----
This statement is optional. It enables sites experiencing
either SAS WORK space allocation problems or out of work
space conditions during DAYnnn or INCRnnn (where nnn is the
job step number), daily or incremental update processing, to
allocate multiple WORK files.
You can allocate multiple WORK files for use during the daily
and/or incremental update job step. The maximum number of
WORK files you can allocate varies by product. These
additional work files are used in conjunction with the single
work data set allocated by default using the JCLDEF
parameters WORKUNIT and WORKSPACE.
Because the individual space allocation requirement for each
WORK file is typically much smaller, it is more likely to be
satisfied.
To take advantage of multiple WORK files support, edit
prefix.MICS.PARMS(cccOPS) and insert a WORK statement as
shown below:
WORK n data_set_allocation_parameters
where n is the number of WORK data sets
Note: The default is three (3).
The maximum is nine (9).
data_set_allocation_parameters is one or more data
set allocation parameters (for example, STORCLAS or
SPACE) separated by spaces.
You can also specify the WORK parameter as the following:
WORK n XXX pppp ssss
where:
n is the number of WORK data sets
XXX is TRK or CYL
pppp is the primary allocation
ssss is the secondary allocation
Note: When allocating any number of SAS WORK data sets, be
aware that one additional SAS WORK data set is automatically
allocated to facilitate sorting. For example, if you
allocate six SAS WORK data sets, you will actually get seven.
If you omit the data_set_allocation_parameters or the WORK
parameter, the work data sets are allocated according to the
values you specified for the WORKUNIT and WORKSPACE
parameters in prefix.MICS.PARMS(JCLDEF). Use the
data_set_allocation_parameters to override this default,
either to alter the space allocation or to use System Managed
Storage (SMS) parameters to control data set placement and
characteristics.
Note: If you allocate insufficient space for the WORK data
sets, DAYnnn and/or INCRnnn processing will fail and can only
be restarted from the beginning.
Note: If internal step restart is active, you can override
the WORK data set allocation parameters at execution-time
using the //PARMOVRD facility. For more information about
execution-time override of dynamic data set allocation
parameters, see the PIOM, section 2.3.6.
Specify data set allocation parameters, separated by blanks,
according to SAS LIBNAME statement syntax. If you need
multiple lines, repeat the WORK keyword on the continuation
line.
WORK accepts the engine/host options documented in the SAS
Companion for the z/OS environment, including STORCLAS, UNIT,
SPACE, BLKSIZE, DATACLAS, MGMTCLAS, and VOLSER.
Important! Do not specify the DISP parameter.
Example 1:
WORK n STORCLAS=MICSTEMP SPACE=(XXX,(pppp,ssss),RLSE)
where:
n - is the number of WORK data sets.
STORCLAS - specifies a storage class for a new data set.
The name can have up to 8 characters.
SPACE - specifies how much disk space to provide for
a new data set being allocated.
XXX - is TRK or CYL.
pppp - is the primary allocation.
ssss - is the secondary allocation.
RLSE - specifies that free-space should be released
when the data set is closed.
Example 2:
WORK n XXX pppp ssss
where:
n - is the number of WORK data sets.
XXX - is TRK or CYL.
pppp - is the primary allocation.
ssss - is the secondary allocation.
Example 3 (multiple lines):
WORK n STORCLAS=MICSTEMP UNIT=SYSDA
WORK SPACE=(xxxx,(pppp,ssss),,,ROUND))
where:
n - is the number of WORK data sets.
STORCLAS - specifies a storage class for a new data set.
The name can have up to eight characters.
UNIT - specifies the generic unit for a new data set.
The name can have up to eight characters.
SPACE - specifies how much disk space to provide for
a new data set being allocated.
XXX - is TRK or CYL.
pppp - is the primary allocation.
ssss - is the secondary allocation.
Note: Since there is some performance impact when using
multiple WORK files, you should specify the minimum number of
WORK data sets to meet your work space requirements. As a
start, try incrementing the number gradually beginning from
the default.
WORK Considerations
--------------------
How Much Space Should You Allocate?
o First Time Implementation of Multiple Work Files
If this is the first time you are implementing multiple
work files for this product in this unit, review
prefix.MICS.PARMS(JCLDEF) and find the WORKSPACE
parameter. It will resemble this sample statement:
WORKSPACE TRK 500 250
The value shows the current SAS WORK space allocation for
the unit as a single data set. It also serves as the
default value used in the unit's DAYnnn daily update
(and/or INCRnnn incremental update) step unless you
provide a WORK parameter.
To achieve the equivalent work space allocation of
WORKSPACE TRK 500 250 using multiple WORK data sets that
will collectively share the work space requirements of
the daily and/or incremental update step, you could code
either one of these:
WORK 2 SPACE=(TRK,(250,125))
WORK 5 SPACE=(TRK,(100,50))
To determine the total work space, multiply the number of
WORK files (n) by the primary (pppp) and secondary (ssss)
values specified.
Note: To simplify the example, only the SPACE parameter
is shown above. You can follow either with data set
allocation parameters like UNIT or STORCLAS as required
for your site.
o Adjusting Allocation for Existing Multiple WORK Files
If you have previously implemented multiple WORK file
support for this product in this unit, and you want to
change either the number of WORK files or the space
allocations, examine prefix.MICS.PARMS(cccOPS) and find
the existing WORK statement.
- If the existing WORK statement only specifies the
number of WORK files but does not contain space
allocation information as shown below:
WORK 5
Then each of the multiple WORK files is allocated
using the values from the WORKSPACE parameter of
prefix.MICS.PARMS(JCLDEF), as described earlier under
First Time Implementation of Multiple Work Files.
To increase workspace, you can increase the number of
WORK files (for example, change WORK 5 to WORK 6,7,8,
or 9), increase the space allocation in the WORKSPACE
parameter, or do both.
To decrease workspace, you can decrease the number of
WORK files (for example, change WORK 5 to WORK 4,3,2,
or 1), decrease the space allocation in the WORKSPACE
parameter, or do both.
You can also elect to explicitly specify the multiple
WORK file space allocation by adding the space
allocation values directly to the WORK statement. This
will remove the link to the prefix.MICS.PARMS(JCLDEF)
WORKSPACE parameter for multiple WORK file space
allocation. This is recommended as it serves to
clearly document, in one place, how multiple WORK files
are allocated.
- If the existing WORK statement does include space
allocation as shown in the examples below:
WORK 5 TRK 200 100
or
WORK 5 SPACE=(TRK,(200,100)) STORCLAS=MICSTEMP
Simply change the values to meet your needs.
If you need more work space, you can increase the
number of WORK files (for example, change WORK 5 to
WORK 6,7,8, or 9), increase the space allocation (for
example, change TRK 200 100 to TRK 250 120), or do
both.
To decrease work space, you can decrease the number of
WORK files (for example, change WORK 5 to WORK 4,3,2,
or 1), decrease the space allocation (for example,
change TRK 200 100 to TRK 150 80), or do both.
Note: If internal step restart is NOT active (RESTART NO)
and you change the WORK parameter, you must:
o Run cccPGEN
o Run JCLGENU for DAILY (to regenerate DAILY) and, if
incremental update is enabled, INCRccc
When internal step restart is active, (RESTART YES), then,
when you change WORK and run cccPGEN, changes take effect
immediately. There is no need to run JCLGENU.
SASWORK
-------
This statement is optional.
The WORK DD statement in the CA MICS procedures allocates
a temporary data set where SAS keeps its temporary data
files and other items that SAS uses during processing of
the current job.
By default, the space allocated is defined in the member
prefix.MICS.PARMS(JCLDEF) with the WORKSPACE and WORKUNIT
parameters, then generated into all the JCL procedures for
a given unit.
With the SASWORK statement you have the option to override
this unit-wide definition to specify the space allocation
individually for the current step.
The format of the SASWORK statement is:
SASWORK data_set_allocation_parameters
where data_set_allocation_parameters is one or more data set
allocation parameters (for example, STORCLAS or SPACE)
separated by spaces.
You can also specify the SASWORK parameter as the following:
SASWORK XXX pppp ssss
where:
XXX is TRK or CYL
pppp is the primary allocation
ssss is the secondary allocation
If you omit the data_set_allocation_parameters or the SASWORK
statement, the WORK data set is allocated according to the
values you specified for the WORKUNIT and WORKSPACE
parameters in prefix.MICS.PARMS(JCLDEF). Use the
data_set_allocation_parameters to override this default,
either to alter the space allocation or to use System Managed
Storage (SMS) parameters to control data set placement and
characteristics.
Specify data set allocation parameters, separated by blanks,
according to SAS LIBNAME statement syntax. If you need
multiple lines, repeat the SASWORK keyword on the
continuation line.
Example:
SASWORK STORCLAS=MICSTEMP SPACE=(XXX,(pppp,ssss))
where:
STORCLAS - specifies a storage class for a new data set.
The name can have up to 8 characters.
SPACE - specifies how much disk space to provide for
a new data set being allocated.
XXX - is TRK or CYL.
pppp - is the primary allocation.
ssss - is the secondary allocation.
Note: If you change the SASWORK parameter, you must:
o Run cccPGEN
o Run JCLGENU for DAILY (to regenerate DAILY) and, if
incremental update is enabled, INCRccc
MULTWORK|NOMULT fff fff ... fff
-------------------------------
Since multiple work files usage impacts performance, this
product provides these optional parameters so you can
restrict multiple work files usage to only those files having
excessive space requirements.
Note: You can only use one of these optional parameters with
the WORK statement, NOT both.
The MULTWORK parameter restricts the use of multiple WORK
files to ONLY those listed after the MULTWORK keyword.
MULTWORK fff fff ... fff
where fff is the unique three character identifier
If you need multiple lines, repeat the MULTWORK on the
continuation line.
The NOMULT parameter forces the use of multiple WORK files
for all files EXCEPT those specified after the NOMULT
keyword.
NOMULT fff fff ... fff
where fff is the unique three character identifier
If you need multiple lines, repeat the NOMULT on the
continuation line.
The default is the following if neither MULTWORK nor NOMULT
parameters is specified:
MULTWORK _VT _VU ASC BPG CDI CDT CHC CMU CPV CT1 NDT NTU
QCT SGP SPP STP VXT VXU XDV XLF XSS LXP
NOMULT ACF DCF LCP LPR PCF SCF SCX STA VXF XDS XSF XST
XTW
The implementation of internal restart support in this
component requires the creation of a number of temporary
files not defined in sharedprefix.MICS.GENLIB(VMCGENIN).
Files eligible for multiple WORK support are listed below:
Note: Files marked with * are not enabled to use multiple
WORK files for performance reasons.
_VT VMX User Transaction Event Data File
_VU VMX User Activity Event Data File
* ACF VMX CPVOL Configuration Data File
ASC VMX Shared Address Space Work File
BPG VMX Block Paging Data File
CDI VMX DASD Cache Activity File
CDT WRK Intermediate Cache Activity File
CHC VMX Channel Path Contention File
CMU VMC User Resource Accounting File
CPV VMX CP Owned Volume Data File
CT1 WRK Intermediate Cache Activity File
* DCF VMX Device Configuration File
* LCP VMX Logical Processor Activity File
* LPR VMX Logical Partition Activity File
NTU VMC Network Terminal Usage File
NDT VMC Network Data Transmission File
* PCF VMX Processor Configuration File
QCT WRK Intermediate Performance Data File
* SCF VMX System Configuration File
* SCX VMX Scheduler Parameters File
SGP VMX System Global Data File
SPP VMX System Processor Data File
* STA WRK Intermediate Status Work File
STP VMX System Timer Pop File
* VXF VMX User Data Configuration File
VXT VMX User Transaction Sample Data File
VXU VMX User Activity Sample Data File
* XDS VMX Device SEEKs Data File
XDV VMX Device Activity File
XLF WRK Intermediate User Activity File
* XSF VMX Shared Storage Configuration
XSS VMX Shared Storage Management File
* XST WRK Intermediate Shared Storage File
* XTW WRK Intermediate Shared Storage File
The following section discusses changing the WORK option:
1 - Change the Number of Work Files