Many of the general considerations for VSAM I/O optimization apply to tuning the CA-L-SERV File Server. This document describes various definitions to consider when tuning VSAM files managed by CA-L-SERV in order to achieve optimal performance.
To be able to make the right changes, measurement is required. Part of the monitoring data consists of I/O counts and percentages gathered on the z/OS level.
The other part originates from within CA-L-Serv.
A DISPLAY STATISTICS command would show the following for each managed File :
LDM0546I File server database statistics -
LDM0547I Ddname PUT SEQ GET DIR GET ERASE RETRY
LDM0549I ddname nn nn nn nn nn
LDM0550I [avg. n.n n.n n.n n.n n.n]
The LDM0549I displays the following:
Ddname : The ddname of a managed file. If you specify a ddname on the DISPLAY command, CA-L-Serv displays information about that file only. Otherwise, it displays information about all managed files.
PUT : The number of logical write requests issued for the data set.
SEQ GET : The number of logical read requests issued for the data set in sequential mode.
DIR GET : The number of random read requests issued for the data set.
ERASE : The number of records deleted from the data set.
RETRY : The number of I/O requests that had to be retried.
If you specify the SERVICE operand on the DISPLAY command, CA-L-Serv displays average service times (in milliseconds) in message LDM0550I.
The RETRY column here represents the time elapsing after an i/o operation could not be satisfied because of database contention.
It includes a hard coded wait period and is an average represented in milliseconds.
When VSAM fails an I/O because of CI contention or string/buffer shortage, CA-L-Serv does not return control to the 'client' application.
Judging that the problem is most of the time temporary, it retries the I/O request.
The 'RETRY' column in LDM0549I lists the total number of I/O that were retried since the last time the counters were reset, ie. at startup, or via the 'D STAT, RESET' format of the command as shown in the Administration guide.
Of interest here is not so much the total number of retries but rather the ratio between the number of retries, and the total number of I/O requests over an interval.
Obviously, if the counters have not been reset for a long time, the ratio itself can be misleading, since would then tend to mask the peak intervals.
Any RETRY/IO_COUNT ratio greater than 5% needs to be looked into. In such a case do a LISTCAT of the VSAM files matching to the DDNAME and see if they have a large number of CI splits.
CA-L-SERV files can be buffered in NSR or LSR Buffer Pools.
Private (NSR) buffer pools, are reserved for a single file.
By default, VSAM creates a private buffer pool when the data set is initially opened.
You only need to define private buffer pools to CA-L-Serv if you wish to override the VSAM defaults, which can be done by using the BUFNI, BUFND, and STRNO keywords of the ADDFILE command.
Local shared resource (LSR) buffer pools, are shared by a set of files you designate.
Files that share a buffer pool should have similar buffer characteristics.
Computer Associates recommends that you use LSR buffer pools for Endevor's MCF,Package and E-Lib VSAM files.
In general files with similar characteristics can benefit, because of improved service times for most types of I/O processing, and especially with random access.
You can define up to 15 LSR buffer pools using the ADDPOOL command.
A DISPLAY BUFFERPOOL displays information about LSR Pools that L-SERV manages:
LDM0552I File server buffer pools -
LDM0553I Pool Size Count BFRFND BUFRDS UIW NUIW
LDM0554I nn nn nn nn nn nn nn
POOL : The number assigned to a buffer pool.
SIZE : The size (in bytes) of one set of buffers in the pool.
COUNT : The number of buffers of a given size contained in the pool.
BFRFND : The number of read requests that could be satisfied without an I/O operation because VSAM found the data in a buffer.
BUFRDS : The number of times VSAM had to bring data into a buffer.
UIW : The number of user-initiated write (PUT) requests.
NUIW : The number of write requests initiated by VSAM buffer management. These are write operations
that VSAM was forced to do because no buffers were available for reading the contents of a control interval.
Note that these are the result from a SHOWCB macro operation, which implies that the values are counting from the time of OPEN until DISPLAY.
Note also that CA-L-Serv will ignore the BUFND, BUFNI, and STRNO parameters of the ADDFILE, when you use an LSR buffer pool.
STRNO allows you to specify the number of VSAM strings assigned to the buffer pool and can be defined for LSR on the ADDPOOL.
The STRNO count specifies the maximum number of concurrent I/O requests against the buffer pool that VSAM will be able to process.
The value can be 3 up to 255 (the default is 16).
Refer to the following documentation for more detailed information:
The IBM manual z/OS DFSMS Using Data Sets relevant to your level of z/OS. Look for additional information on keywords BFRFND, BUFRDS, UIW, and NUIW as well as the interpretation of the figures listed under these headings.
CA Common Services for z/OS r14.1 Administration Guide