Use VTAM Buffer Pool attributes to create situations for monitoring performance data related to VTAM buffer pools.
VTAM uses buffer pools to control the buffering of data. It dynamically allocates and de-allocates space in these buffer pools for the VTAM control blocks, I/O buffers, and channel programs that control the transmission of data. When you tune a buffer pool, you optimize the trade-off between CPU usage and the amount of storage allocated for a pool. If you specify a large buffer pool, you might waste storage but conserve CPU usage. If you specify a small pool, you might conserve storage but use the CPU for frequent expansion and contraction. With proper tuning, you can achieve a balance between storage use and performance that is suitable for your system.
Active Extents The current number of active extents. The format is an integer. When dynamic expansion is enabled, then VTAM creates an extent each time it expands the buffer pool. An extent remains active as long as any of its buffers are in use. An extent becomes inactive when VTAM frees the group of pages in that extent to contract the buffer pool.
Available Buffers in Extents The total number of available buffers residing in all active extents. The format is an integer.
Base Buffer Allocation The base number of buffers defined at VTAM initialization. The format is an integer.
This base number of buffers is defined as the number of buffers allocated for the static portion of the buffer pool at VTAM startup. This number is specified in the VTAM start options (for example, SYS1.VTAMLST(ATCSTRxx)). To determine what this number should be, compare the base allocation to the total number of buffers in use. If the total number of buffers in use is consistently greater than the base allocation, consider increasing the base allocation to avoid excessive buffer pool expansion and contraction.
Buffer Pool Fetch Protected Storage Specifies whether storage for this buffer pool is fetch protected. Valid responses for this field are:
Fetch protection limits access to sensitive data by unauthorized programs in the system. To manage real storage, z/OS associates a storage protection key with each page and with the program status word (PSW).
Generally, if both keys match, the program can read or write on the page. If the keys do not match, the program can read the page only if the fetch protection bit is off. If the fetch protection bit is on and the keys do not match, a program exception occurs. Generally, if a program executes with a PSW key of zero, it can read or write to the page regardless of its fetch protection status.
Buffer Pool Fixed Storage Specifies whether the buffer pool storage is fixed or pageable. Valid responses for this field are:
Programs and data are always allocated in virtual storage, which is then mapped to real storage when accessed by a program. Pageable storage frames can reside on DASD and be paged in as needed. Although paging delays access to the storage and slows the program, it conserves real storage. Fixed storage frames are always resident in real storage; the program can access the data without a page in operation. However, when more fixed frames are in use, less real storage is available for any frames that must be paged in.
In most cases, using fixed storage for certain pools helps overall response time and is worth the cost of real storage.
Buffer Pool Name The name of the VTAM buffer pool. This value is displayed as a one of these character strings:
Buffer Pool Subpool The z/OS subpool number from which buffer pool storage is allocated. The format is an integer.
This field displays the number of the z/OS subpool in which the storage is allocated. The number indicates the subpool's specific characteristics, as defined by z/OS.
Buffer Size The size of each buffer in the pool (in bytes). The format is an integer.
You can define the buffer size for the IO00 buffer pool only; VTAM sets all other buffer sizes.
VTAM determines the buffer size by taking the size, rounding it to a doubleword boundary, and adding a 16-byte header. VTAM also adds an additional 55-byte header to the buffers in the I/O pool.
Buffers Available The total number of available buffers in the named pool. The format is an integer.
This field displays the number of buffers that are not being used. These buffers can be allocated as required. VTAM determines the condition of the buffer pool based on this value.
Buffers For Queued Requests The number of available buffers that would be necessary to satisfy the currently queued storage requests. The format is an integer.
Buffers In Use The total number of buffers in the pool that are allocated and in use. The format is an integer. The number is less than or equal to the total number of buffers in the pool.
Buffers Over Expansion The number of available buffers over the expansion threshold. The format is an integer. If dynamic expansion is enabled and the number of buffers falls below the expansion threshold, the pool will expand. The expansion threshold is specified in the VTAM start options (for example, SYS1.VTAMLST(ATCSTRxx)).
Buffers Over Slowdown The number of available buffers over the slowpoint threshold. The format is an integer. A zero indicates that the buffer is currently in slowdown mode. The slowdown threshold is specified in the VTAMLST data set.
Collection Time The time and date of the data sampling. This time is displayed in the following format:
mm/dd/yy hh:mm:ss
Where:
The stored format is a string no longer than 16 characters in the format CYYMMDDHHMMSSmmm (as in 1020315064501000 for 03/15/02 06:45:01) where:
Contraction Threshold The point at which dynamic contraction occurs. The format is an integer. If the number of available buffers is greater than this value, VTAM attempts to contract the buffer pool.
To do this, VTAM locates an inactive extent and frees its pages. VTAM frees the pages in an extent as a group; an extent remains active and allocated as long as any of its buffers are in use.
Expansion Size (Buffers) The number of buffers that VTAM will allocate to each new extent if dynamic expansion is enabled. The format is an integer.
Dynamic expansion expands and contracts the buffer pool as needed to satisfy the demands of VTAM processes. The actual value reflects the number of buffers in each extent after VTAM rounds the value to full pages. For example, if 30 buffers fit on one page of storage and XPANNO is specified as 32, each extent will contain 2 pages of 30 buffers each.
Expansion Size (Bytes) The number of bytes VTAM will allocate to each new extent if dynamic expansion is enabled. The format is an integer.
Expansion Threshold The point at which dynamic expansion occurs. If the number of available buffers is equal to or less than this value, VTAM expands the buffer pool. The format is an integer.
Expansion Threshold Flag Specifies whether the Buffers Available is less than or equal to the Expansion Threshold. Valid responses for this field are:
IO Buffer Expansion Limit The maximum number of buffers allowed in the buffer pool. The format is an integer.
This field displays the maximum number of buffers allowed for IOBUF. It sets a limit on the amount of CSA that VTAM may use for IOBUF expansions. This number is calculated by VTAM from XPANLIM value specified in IOBUF statement in ATCSTRxx member of SYS1.VTAMLST library.
When calculating VTAM takes into account how many buffers fit on a page. If XPANLIM is not specified in buffer definition or is coded 0, buffer expansion is not limited, and the value 2,147,483,647 is displayed in the field.
IO Expansion Limit Percent The percentage of the total number of I/O buffers compared to expansion limit (xpanlim). The format is an integer.
Max Bytes Allocated The maximum number of bytes allocated since last COLLECT CNM RU command was sent. The format is an integer.
Max Requests Queued The maximum number of queued requests since the last COLLECT CNM RU command was sent. The format is an integer.
Origin Node The unique identifier for the VTAM host being displayed. The format is an alphanumeric string no longer than 32 characters.
Pool Status The current buffer pool status. The format is an integer. The current buffer pool status can be one of the following:
Pool Thrashing This column indicates whether the buffer pool is thrashing. The format is a string. Valid responses for this field are:
Queued Requests The number of storage requests that are currently queued (RPHs). The format is an integer.
VTAM honors requests for storage dynamically, as permitted by buffer availability. If buffers are not available, VTAM queues the requests until enough storage is available.
Slowdown Threshold The slowdown threshold value. The format is an integer. If the number of available buffers in the pool is equal to or less than this value the buffer pool enters slowdown mode.
Slowdown mode queues all non-priority requests for buffers and stops the flow on a virtual route. To avoid slowdown mode, increase the XPANPT value.
Static Buffers Available The number of buffers from the base allocation that are currently available. The format is an integer.
Storage Allocated Below 16MB Line Specifies whether storage for this buffer pool is allocated below the 16MB line. Valid responses for this field are:
System ID The SMF system ID. The format is an alphanumeric string no longer than 4 characters.
Times Expanded If dynamic expansion is enabled, this field displays the number of pool expansions since the last SMS trace record was written. The format is an integer.
If the SMS trace has not been used, this field displays the number of expansions since VTAM was last started.
Total Buffers The total number of buffers currently in the pool. The format is an integer.
If dynamic expansion is enabled, this number may change and will include the base allocation as well as any dynamic allocation.
If dynamic expansion is not enabled, this field displays a constant value equal to the base allocation.
User Specified Base Buffers The user-defined value for the base number of buffers in the buffer pool (BASENO). This is the value coded in the ATCSTRxx member of SYS1.VTAMLST library. The format an integer.
User Specified Expansion Buffers The user-defined value for the number of buffers VTAM is allowed to acquire when expanding the buffer pool (XPANNO). This is the value coded in the ATCSTRxx member of SYS1.VTAMLST library. The format is an integer.