Portal | Manuals | References | Downloads | Info | Programs | JCLs | Master the Mainframes
IBM Mainframe Computers Forums Index
 
Register
 
IBM Mainframe Computers Forums Index Mainframe: Search IBM Mainframe Forum: FAQ Memberlist Usergroups Profile Log in to check your private messages Log in
 

 

BUFND & BUFNI

 
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> JCL & VSAM
View previous topic :: :: View next topic  
Author Message
triplej

New User


Joined: 14 Jun 2007
Posts: 3
Location: India

PostPosted: Tue Oct 30, 2012 6:19 pm    Post subject: BUFND & BUFNI
Reply with quote

Wanted to understand which definition of BUFND & BUFNI parameter will make more performance improvement?
1. AMP Parameter
//VSAMDD DD DISP=SHR, DSN=VSAMDSN,AMP=’BUFNI=5,BUFND=5’

2. Converting to BLSR & define the BUFND, BUFNI
//VSAMALT DD DISP=SHR,DSN=VSAMDSN
//VSAMDD DD SUBSYS=(BLSR,'DDNAME=VSAMALT',’BUFNI=500,BUFND=500’)

Which one of these has more advantage?
Back to top
View user's profile Send private message

Robert Sample

Global Moderator


Joined: 06 Jun 2008
Posts: 8057
Location: East Dubuque, Illinois, USA

PostPosted: Tue Oct 30, 2012 6:59 pm    Post subject:
Reply with quote

Quote:
Wanted to understand which definition of BUFND & BUFNI parameter will make more performance improvement?
The FIRST thing to understand is that performance improvement for VSAM files depends largely upon the program's access. Since you're talking BUFND and BUFNI, I assume you are talking about a KSDS VSAM file. For a KSDS file, there are three types of access: random (where any particular record can be read next), sequential (where the next record to be read is the one in key sequence after the current record), and skip sequential (where a random read is done to establish position, then a series of sequential reads are done).

For programs doing random access, BLSR can improve performance since BLSR is optimized for random access. For programs doing sequential access, BLSR is pretty much the WORST choice to make.

For programs doing sequential access, providing plenty of data (BUFND) buffers and a few index (BUFNI) buffers will improve performance most.

For programs doing skip sequential processing, whether to use BLSR will depend upon the ratio of sequential reads to random reads. If the program does 500 sequential reads for every random read, using BLSR will drastically impact performance in a negative way. If the program does 50 random reads for every sequential read, though, then BLSR would probably be the way to go.

And, by the way, your posted example of 5 buffers for data and index is very poor -- for random access you should have at least enough index buffers to read in one record from each level and 1 data buffer; for sequential access you should have at least enough data buffers to read in an entire CA and 1 index buffer.
Back to top
View user's profile Send private message
PeterHolland

Global Moderator


Joined: 27 Oct 2009
Posts: 2433
Location: Netherlands, Amstelveen

PostPosted: Tue Oct 30, 2012 7:16 pm    Post subject:
Reply with quote

https://www.ibm.com/developerworks/mydeveloperworks/blogs/MartinPacker/entry/memories_of_batch_lsr?lang=en
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> JCL & VSAM All times are GMT + 6 Hours
Page 1 of 1

 

Search our Forum:

Similar Topics
Topic Author Forum Replies Posted
No new posts Clarification regarding BUFNI & B... thirumalasetty JCL & VSAM 14 Tue Jun 17, 2014 8:22 pm
No new posts VSAM - BUFNI and BUFND optimum values Hariharan Ramachandran JCL & VSAM 5 Wed Dec 08, 2010 11:49 pm
No new posts BUFNI and BUFND size THINKSRINIII JCL & VSAM 4 Thu Apr 02, 2009 3:04 pm
No new posts BUFNI calculation under VSAM for EXTV... Guru Bob JCL & VSAM 2 Fri Nov 07, 2008 1:25 pm
No new posts What is the use of AMP=('BUFND=20') sophia Mainframe Interview Questions 1 Thu Feb 07, 2008 4:31 am


Facebook
Back to Top
 
Mainframe Wiki | Forum Rules | Bookmarks | Subscriptions | FAQ | Tutorials | Contact Us