Portal | Manuals | References | Downloads | Info | Programs | JCLs | Mainframe wiki | Quick Ref
IBM Mainframe Computers Forums Index
 
Register
 
IBM Mainframe Computers Forums Index Mainframe: Search IBM Mainframe Forum: FAQ Memberlist Profile Log in to check your private messages Log in
 
VSAM - BUFNI and BUFND optimum values

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

New User


Joined: 30 Nov 2010
Posts: 28
Location: Chennai, Tamilnadu,INDIA

PostPosted: Wed Dec 08, 2010 11:49 pm    Post subject: VSAM - BUFNI and BUFND optimum values
Reply with quote

Hi,

Could someone help in getting the optimized value for BUFND and BUFNI values for a Skip Sequential proceessing. I came accross a document in the forum and found the formula for calculating BUFND ad BUFNI values but it did not say for which accessing mode this formula would stick.

1. For BUFND use the number of CIs/CA in the data component
2. For BUFNI divide HURBA for index by index CIsize and add 5

http://publib.boulder.ibm.com/infocenter/ieduasst/stgv1r0/topic/com.ibm.iea.zos/zos/1.0/DFSMS/zOS_Catalog_and_VSAM_Best_Practices.pdf

Please let me know for which access mode i should use this formula and also the formula for other accessing modes.

Regards,
#ari
Back to top
View user's profile Send private message

Robert Sample

Global Moderator


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

PostPosted: Wed Dec 08, 2010 11:59 pm    Post subject:
Reply with quote

For optimizing direct access, you need at least one BUFNI for each level of the index (see the LISTCAT output for the number of levels of the index) and one BUFND; additional BUFNI will help more than BUFND since the index is being used to get to the appropriate DATA buffer.

For optimizing sequential access, the number of CI per CA may overdo it some (I typically find best results from 50 to 100 BUFND and if the data CI size is 4K you'd allocate 180 BUFND), while you don't really use the index buffers so BUFNI can be small.

Skip sequential processing combines the best (or worst) of each, so you probably ought to allocate plenty of BUFND and BUFNI in such a case. Look into LSR as well -- depending upon the amount of skipping being done, LSR might help. Knowing the data access pattern can help, but if your program starts near the beginning of the file, reads 3 records sequentially, goes near the end and reads 2 records sequentially, then skips to the middle of the file and reads 4 records -- there's not much that will improve performance for such a read pattern!
Back to top
View user's profile Send private message
expat

Global Moderator


Joined: 14 Mar 2007
Posts: 8593
Location: Back in jolly old England

PostPosted: Thu Dec 09, 2010 12:26 pm    Post subject:
Reply with quote

Robert, as the OP has stated skip-seq I have nearly always found that allocating large buffer numbers can also detriment performance as all of the buffers are refreshed at each change of access method.
Back to top
View user's profile Send private message
Robert Sample

Global Moderator


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

PostPosted: Thu Dec 09, 2010 3:51 pm    Post subject:
Reply with quote

expat, I suspect that's why I typically find best performance in the 50 to 100 buffers range -- more buffers means more to flush when changing access.
Back to top
View user's profile Send private message
expat

Global Moderator


Joined: 14 Mar 2007
Posts: 8593
Location: Back in jolly old England

PostPosted: Thu Dec 09, 2010 3:59 pm    Post subject:
Reply with quote

Why Robert, you are looking a little flushed, are you OK icon_lol.gif
Back to top
View user's profile Send private message
Hariharan Ramachandran

New User


Joined: 30 Nov 2010
Posts: 28
Location: Chennai, Tamilnadu,INDIA

PostPosted: Fri Dec 10, 2010 11:51 am    Post subject:
Reply with quote

Thanks, Expat and Robert,

I have used the below formula's to calculate the BUFND and BUFNI for SKIP SEQUENTIAL access method. The results was very good and as expected.

BUFND--> number of CI/CA in data component
BUFNI---> 1+index's REC-TOTAL(data's HI-U-RBA/data's CI/CA * data's CISIZE)

All these values has been obtained from LISTCAT entries of that particular dataset. TSO LISTCAT ENT('dataset name') all.

Regards,
#ari
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 Working with hex values in Filemanage... Emile Straker IBM Tools 0 Tue Sep 12, 2017 1:42 am
No new posts DB2 NULL Values display V S Amarendra Reddy DB2 3 Thu Sep 07, 2017 6:59 pm
No new posts Moving values to a variable of copybo... Vignesh Sid COBOL Programming 6 Wed Sep 06, 2017 1:04 pm
No new posts Multiple VSAM files single output fil... Mohan Kothakota DFSORT/ICETOOL 11 Wed Aug 09, 2017 7:57 pm
No new posts BI,TO=ZD Changing Values Tyler Dunbar DFSORT/ICETOOL 4 Tue Jul 25, 2017 12:12 am

Facebook
Back to Top
 
Job Vacancies | Forum Rules | Bookmarks | Subscriptions | FAQ | Polls | Contact Us