Hi Peter, Have you seen the VSAM Demystified definition for SMBHWT?
SMBHWT: Used to allocate hiperspace buffers based on a multiple of the number of address space virtual buffers that have been allocated. It can be an integer from 0 to 99. The value specified is not a direct multiple of the number of virtual buffers that are allocated to the resource pool, but act as a weighting factor for the number of hiperspace buffers to be established. The hiperspace size buffer will be a multiple of 4K. These buffers may be allocated for the base data component of the sphere. If the CI size of the data component is not a multiple of 4K, both virtual space and hiperspace is wasted. The default is 0 and means that hiperspace is not used. It is not a direct multiple of the buffer count, but a "weighting factor" .. Very cryptic. In any case, did you see much of an improvement when adding hiperspace buffers? Our experience shows that the I/O reduction (and elapsed) usually achieved when adding the hiperspace buffers does not always justify the CPU increase. Best Regards, Yifat -----Original Message----- From: IBM Mainframe Discussion List [mailto:[email protected]] On Behalf Of Farley, Peter x23353 Sent: יום ה 03 נובמבר 2011 21:01 To: [email protected] Subject: What exactly does the SMBHWT subparameter do? We are at z/OS V1.12 here. I am investigating how the use of system managed buffering can help improve performance for a large, extended-format KSDS with a very random read-only access pattern resulting in over a million read I/O's in a batch run. After RTFM, it looks to me like I should definitely specify ACCBIAS=DO, but whether I should use SMBHWT and if so what value I should use is eluding me. The documentation is just not that clear to me. DFSMS Using Datasets says this about the SMBHWT subparameter: SMBHWT. This option specifies the range of the decimal value for buffers. You can specify a whole decimal value from 1-99 for allocating the Hiperspace buffers. The allocation is based on a multiple of the number of virtual buffers that have been allocated. What does "the range of the decimal value for buffers" mean? I am confused. The JCL Reference manual says this about SMBHWT: SMBHWT=nn Specify a requirement for hiperspace where nn is an integer from 0 to 99. Use this parameter with direct optimization. The default value is 0, which means that the system does not obtain any hiperspace. Neither of these definitions tells me precisely what a value of (say) 12 will do. Does the SMBHWT serve as a multiplier, so that (SMBHWT * # of virtual buffers) is allocated in hiperspace? Does that mean if the system allocates 9000 virtual buffers, that SMBHWT=12 will allocate 12 * 9000 hiperspace buffers? Your help in curing my ignorance in this area is appreciated. Peter -- This message and any attachments are intended only for the use of the addressee and may contain information that is privileged and confidential. If the reader of the message is not the intended recipient or an authorized representative of the intended recipient, you are hereby notified that any dissemination of this communication is strictly prohibited. If you have received this communication in error, please notify us immediately by e-mail and delete the message and any attachments from your system. ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html

