OSAM buffers

If you are using OSAM, individual subpool buffer reports do exist. However, you can monitor the number of buffers you are using by using the Enhanced OSAM Buffer Subpool statistics function. If you defined your OSAM subpools dynamically, you can also obtain information about the buffer pools by issuing a QUERY command.

The Enhanced OSAM Buffer Subpool statistics function supports the following values:
DBESF
Provides the full OSAM Subpool statistics in a formatted form.
DBESU
Provides the full OSAM Subpool statistics in an unformatted form.
DBESS
Provides a summary of the OSAM database buffer pool statistics in a formatted form.
DBESO
Provides a the full OSAM database buffer pool statistics in a formatted form for online statistics returned as a result of a /DIS POOL command.

Another way to improve performance, this time for a specific application, is to reserve subpools for use by certain data sets. For example, if you have an index data set with a block size of 512 bytes, reserve a subpool for it that contains 512-byte buffers. You can do this by not defining 512-byte block sizes for any other data sets in the database. (Remember, block sizes are specified by data set in the BLOCK= operand in the DATASET statement in the DBD.) If you then allocate enough 512-byte buffers to hold all the blocks in your index, all blocks read into the buffer pool will remain in the buffer pool.

Performance can also be improved through the use of the co (caching option) parameter of the IOBF control statement specified either in the DFSVSMxxx member of IMS.PROCLIB or in DFSVSAMP.

You can dynamically reconfigure OSAM subpools, create new buffer pools, and modify existing pools without taking your IMS system offline.