View previous topic :: View next topic
|
Author |
Message |
swapnilushinde
New User
Joined: 17 Mar 2009 Posts: 30 Location: Bangalore.India
|
|
|
|
HI All
I am trying to increase the VSAM performance. I am trying it by AMP(BUFNI and BUFND). But I don't know how to calculate this BUFNI and how exactly it works... What difference it makes to improve the performance... |
|
Back to top |
|
|
Robert Sample
Global Moderator
Joined: 06 Jun 2008 Posts: 8697 Location: Dubuque, Iowa, USA
|
|
|
|
What kind of reads are you doing? For sequential reads, BUFNI=2 or 3 would be plenty -- but BUFND needs to be high enough to read plenty of data. For random reads, you need at least one more buffer than the number of index levels -- and BUFND doesn't need to be very high.
For programs doing sequential reads of VSAM files, I try to ensure that there's enough BUFND buffers to handle a cylinder of data. I've seen job elapsed time cut 80% by buffering the files (IBM defaults are really poor at supporting sequential processing). |
|
Back to top |
|
|
swapnilushinde
New User
Joined: 17 Mar 2009 Posts: 30 Location: Bangalore.India
|
|
|
|
Thanks Robert... I agree with you but as per my knowledge BUFNI is determined by some formula using CI and CA size. What that formula exactly does ?
If possible please give me any document which will explain all these terms and process for both random and sequential read... |
|
Back to top |
|
|
Robert Sample
Global Moderator
Joined: 06 Jun 2008 Posts: 8697 Location: Dubuque, Iowa, USA
|
|
|
|
www.redbooks.ibm.com and look for VSAM. The first hit (when I did the search) is VSAM Demystified, and chapter 2 covers performance.
BUFNI is only partially determined by CI and CA size for random (direct) reads; for sequential reads it requires only a fixed value. VSAM indexes are built as a tree until there is only one CI required for the next level pointers. The number of levels of index determines how many index buffers (BUFNI) will be needed for a given file -- and obviously as records are added to the file that number will change. If you anticipate CA splits due to your processing, adding index buffers can help. |
|
Back to top |
|
|
swapnilushinde
New User
Joined: 17 Mar 2009 Posts: 30 Location: Bangalore.India
|
|
|
|
Robert , I have gone through above PDF. In addition to that I went through
url=http://publib.boulder.ibm.com/infocenter/cicsts/v3r1/index.jsp?topic=/com.ibm.cics.ts31.doc/dfht3/dfht33r.htm
( search 'Checking startup procedures for performance' in this URL)
1.here I got the formula for calculating BUFNI. By this way BUFNI is coming much higher i.e. 29. Is this optimum BUFNI ???
2. Just want to double-check BUFND= CI/CA.. Is it ???
3. I am not getting the exact meaning of STRNO. Is this no. of records???[/url] |
|
Back to top |
|
|
Robert Sample
Global Moderator
Joined: 06 Jun 2008 Posts: 8697 Location: Dubuque, Iowa, USA
|
|
|
|
1. You cannot state a given BUFNI is optimum without stating whether the file access is random or sequential. If you ran through the formula and it came up with 29, use at least 29 -- maybe round it to 30?
2. For sequential and skip-sequential processing, the VSAM Demystified redbook states BUFND should be the number of CI per CA + 1 if STRNO is one; add more if STRNO is greater than one. For direct (random) access, the redbook recommends STRNO + 1 as the minimum number for BUFND.
3. STRNO is the number of concurrent accesses allowed. For a batch program this is rarely more than one -- although I have seen programs that have multiple DD statements for the same file in which case STRNO needs to be higher than one. For a CICS region, if the file is heavily used, additional strings can speed up transactions that are queued waiting for access to the file. |
|
Back to top |
|
|
swapnilushinde
New User
Joined: 17 Mar 2009 Posts: 30 Location: Bangalore.India
|
|
|
|
Hi
Thanks Robert....
I ran with formula count and it is working fine.. Further I got another AMP parameter as ACCBIAS=SYSTEM ( System managed buffering). I used this parameted in JCL for two DD statements. But the problem is It is buffering only the first VSAM not the second one.
I was tried it several times but same results are there.... Please tell me because of what is it happening??
'ACCBIAS=SYSTEM' is used for all seq. , direct and skipped seq. access modes though it is facing problem for buffering....
Pl guide me for this ASAP... |
|
Back to top |
|
|
Robert Sample
Global Moderator
Joined: 06 Jun 2008 Posts: 8697 Location: Dubuque, Iowa, USA
|
|
|
|
The manual says
Quote: |
ACCBIAS=USER
ACCBIAS=SYSTEM
ACCBIAS=DO
ACCBIAS=DW
ACCBIAS=SO
ACCBIAS=SW
Specify one of these six values to override record access bias in the data class in order to use System-Managed Buffering (SMB) without changing the data class. See OFSMS/MVS Using Data Sets for details on System-Managed Buffering.
USER
Obtain buffers the same way the system would without SMB. This is the default if you code no specification for the ACCBIAS subparameter.
SYSTEM
Force SMB and let the system determine the buffering technique based on the ACB MACRF and storage class specification.
Note: USER and SYSTEM are the only values you may use to specify record access bias in the data class.
DO
SMB with direct optimization.
DW
SMB weighted for direct processing.
This option provides the capability to use hiperspace.
SO
SMB with sequential optimization.
SW
SMB weighted for sequential processing. |
So I'm surprised your first file is working fine -- the system must have allocated similar buffers to your formula calculation. If you want your buffering, you cannot use ACCBIAS=SYSTEM; there may be a site override requiring the parameter so you may not have any choice. |
|
Back to top |
|
|
enrico-sorichetti
Superior Member
Joined: 14 Mar 2007 Posts: 10873 Location: italy
|
|
|
|
Quote: |
Pl guide me for this ASAP... |
please provide the proper fee
ASAP is Your and IBM problem, not ours
just tell us for what reason we should give IBM free consultancy services
replying is on voluntary base and time availability ,
and... TS benevolence factor
your the benevolence factor is dangerously close to 0 |
|
Back to top |
|
|
swapnilushinde
New User
Joined: 17 Mar 2009 Posts: 30 Location: Bangalore.India
|
|
|
|
Enrico
Sorry for violation for protocol..I will strictly follow it henceforth.. |
|
Back to top |
|
|
|