How To
Summary
There are differences in how SMS vs non-SMS temporary data sets are allocated on VIO.
Steps
The fundamentally important thing to know about VIO data sets is that they cannot be extended.
When they are created, they are created in a single extent based on the SPACE parameter specified on the DD, SVC99, data class or defaulted, if not specified. The size of the VIO data set is calculated as: Primary + (15 X Secondary).
Here is a link that explains more about VIO allocations and SMS: Allocating VIO data sets
The maximum size for a VIO data set is 65535 tracks for non-SMS. If the above calculation results in something larger than 65535 tracks, the amount calculated is reduced down to this maximum. The exception to this is if the primary amount requested is already greater than 65535 tracks, in which case the allocation will fail. The maximum size is is 2,000,000 KB or 36,142 tracks for SMS-managed VIO temporary data sets.
There are two types of VIO datasets: SMS-managed, and non-SMS managed.
For non-SMS managed VIO, the system determines how to allocate a new temporary disk dataset, based on its UNIT specification. If UNIT is not specified for such datasets, then the system will treat it as SMS-managed - unless SMS is not active and/or no SMS storage class is assigned. In this case, the system will try to allocate it as a non-VIO temporary datasets on the first found PUBLIC or STORAGE volume.
The default space allocation for non-sms VIO datasets comes from the SPACE value specified in ALLOCxx parmlib, if SPACE is not coded on the DD, SVC99 or data class; if SPACE is not coded in ALLOCxx, then the system uses a default value: 4 primary and 24 secondary blocks, with an average block length of 8192.
For SMS-managed VIO data sets, a storage class must be assigned. For SMS-managed VIO, the VIO MAXSIZE in the SMS storage group determines which temporary data sets will go to VIO vs real dasd. Any temporary data sets larger than VIO MAXSIZE will fail unless a pool storage group is also assigned to the data set, allowing it to be allocated to real dasd.
If the VIO data set is directed to SMS and space values are specified for the data class chosen by the ACS routines, the data class values will take effect rather than the allocation defaults unless space is specified on the JCL SPACE parameter or SVC99 request. If the SPACE calculated in either JCL SPACE parameter, SVC99, ALLOCxx or data class is larger than VIO MAXSIZE, SMS will allocate the data set to the pool storage group assigned instead of VIO.
Keep in mind for SMS or non-SMS managed VIO data sets, if the application is issuing a CLOSE and RLSE is specified, CLOSE will release any unused space. The next time the data set is opened, all that is available is the space that was not released and extend will not be successful.
Here are some examples of how space is calculated based on SPACE parameter on the DD statement:
example 1:
SPACE=(CYL,(1300,200))
1300 (primary amount) X (200 (secondary amount) X 15 (number of extents allowed)) = 4300 cylinders
Now convert that to tracks: 4300 X 15 (number of tracks in a cylinder) = 64500
Since this is lower than the maximum this VIO temporary data set would be allocated with 64500 tracks
example 2:
SPACE=(CYL,(1300,1000))
1300 X (1000 X 15) = 16,300 cylinders or 244,500 tracks.
This would be reduced to 65535 tracks because the primary of 1300 cylinders (19500 tracks) is less than the maximum but sum of all extents is greater than 65535 tracks.
Additional Information
Here is a link to our manual that explains the benefits of using VIO: Benefits of VIO
Document Location
Worldwide
[{"Type":"MASTER","Line of Business":{"code":"LOB56","label":"Z HW"},"Business Unit":{"code":"BU070","label":"IBM Infrastructure"},"Product":{"code":"SWG90","label":"z\/OS"},"ARM Category":[{"code":"a8m0z0000000AL0AAM","label":"DFSMS-\u003ESMS - Storage Management Subsystem"}],"ARM Case Number":"","Platform":[{"code":"PF035","label":"z\/OS"}],"Version":"All Versions"}]
Was this topic helpful?
Document Information
Modified date:
25 June 2024
UID
ibm17147605