[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference iosg::all-in-1_v30

Title:*OLD* ALL-IN-1 (tm) Support Conference
Notice:Closed - See Note 4331.l to move to IOSG::ALL-IN-1
Moderator:IOSG::PYE
Created:Thu Jan 30 1992
Last Modified:Tue Jan 23 1996
Last Successful Update:Fri Jun 06 1997
Number of topics:4343
Total number of notes:18308

623.0. "ALL-IN-1 Tuning question ?" by MSAM00::MIKEWARREN (Technology Consulting, Malaysia) Mon May 04 1992 16:54

Could someone help provide some insight into the following :

The ALL-IN-1 v2.3 System Manager's Guide (page 13-19) under "Tuning ALL-IN-1" 
states that for Resource Tables LOCKIDTBL and RESHASHTBL, the ratio of 
LOCKIDTBL:RESHASHTBL should be between 2:1 and 4:1, with a recommendation of 
2:1 if locks in use is high.

Looking at the attached, could someone sort of recommend what the setting 
should be for SYSGEN parameters or does it look alright the way it is right 
now?

Currently, MODPARAMS.DAT has the following settings for the two parameters 
(in the order shown, from top down):

   LOCKIDTBL 	   = 2048
   MIN-RESHASHTBL  = 512
   MIN-LOCKIDTBL   = 340
   MIN-RESHASHTBL  = 85


                            VAX/VMS Monitor Utility
                           LOCK MANAGEMENT STATISTICS
                                 on node LUTP02       From:  4-MAY-1992 08:02:31
                                    SUMMARY           To:    4-MAY-1992 08:02:41

                                       CUR        AVE        MIN        MAX

    New ENQ Rate                     20.89      20.00       6.46      32.83
    Converted ENQ Rate               18.40      22.18       8.45      46.76

    DEQ Rate                         19.90      19.40       6.46      30.34
    Blocking AST Rate                 0.00       0.19       0.00       0.99

    ENQs Forced To Wait Rate          0.00       0.19       0.00       0.99
    ENQs Not Queued Rate              0.00       0.00       0.00       0.00

    Deadlock Search Rate              0.00       0.00       0.00       0.00
    Deadlock Find Rate                0.00       0.00       0.00       0.00

    Total Locks                    3733.00    3730.80    3727.00    3733.00
    Total Resources                2643.00    2642.60    2640.00    2644.00

T.RTitleUserPersonal
Name
DateLines
623.1MODPARAMSUTRTSC::BOSMANWe're just sugar mice in the rainTue May 05 1992 08:2815
    Hi,

    Not a direct answer to your question but your MODPARAMS should contain
    something like:

    LOCKIDTBL  = 2048
    RESHASHTBL = 1024

    I don't think it make any sense to specify two times the same value,
    even in combination with the 'MIN_' prefix (use a '_' instead of a '-'). 

    Because it is advised to round up the value of RESHASHTBL to the nearest
    power of 2 you better specify a fixed value.

    Sjaak.
623.2Locks and ResourcesIOSG::DAVISMark DavisTue May 05 1992 10:0982
    
    
    For information this is some background on these two parameters
    
    
    
    
    Size of RESHASHTBL and LOCKIDTBL
    
    
    Resources
    
    o  The resource hash table locates all the resource blocks in use. A 
       resource block is created when a lock is first taken out on an entity 
       e.g a file or a record in a file.
    
       For example you enter ALL-IN-1 and open DOCDB.DAT. RMS will take out a 
       lock on that file. It needs first to create a resource block to take a 
       lock out on. When you open PENDING.DAT it is probable that others have 
       this file open and so a resource block has already been created. In 
       this case you will not create a resource block because there is already 
       one there.
    
    o  When a resource block is created it is give a unique name. Most RMS 
       locks are of the form RMS$....diskname.
    
    o  When you create a resource block an entry is added to the resource hash 
       table. The entry is a pointer to the resource block or a chain of 
       resource blocks. The entry number is determined by hashing the name of 
       the resource using a hashing algorithm. Because the hashing algorithm 
       may not lead to a unique number the resource block may be added to a 
       chain of resource blocks with that hash value or entry number.
    
    o  The size of the resource hash table never expands unless the RESHASHTBL 
       system parameter is modified and the system rebooted. If it is set at 
       too small a value, then you will get long chains for each hash value. 
       This will increase the time taken to look up a resource.
    
    Locks
    
    o  When a lock is taken on a resource then a lock block is created. One 
       resource may have many locks. For example many users may have the same 
       file open. 
    
    o  Each lock has an identity number called a lock ID. This number is an 
       index number into the Lock ID table. When a lock is created it is given 
       the next available index number. Index numbers which have been released 
       will be used again. Unlike the resource hash table, the entry in the 
       Lock ID table will point directly to the lock block.
    
    o  If the Lock ID table becomes full that is the number of locks reaches 
       the value of the system parameter LOCKIDTBL, then a new table is 
       created whose size will be the old size plus  LOCKIDTBL (i.e it will 
       double in size on the first expansion). The entries from the old table 
       will be moved to the new table.
    
    
    From the above the following conclusions can be drawn.
    
    o  In the long run it is better (although not good) to have too small a 
       lock ID table  than resource table. Too small a lock table will mean 
       that the system will pause for a moment while a new Lock ID table is 
       created. Too small a resource table will mean a permanent slowing down.
    
    o  The proportional size of the Lock ID table and Resource hash tables 
       should be proportional to the number of resources and Locks created.
    
       You can see how many locks and resources there are on any system by 
       issuing the command $monitor locks. On most ALL-IN-1 systems this will 
       be in the proportion 2:1.  You should do this check both to ensure that 
       the proportion is right and the values are right.
    
    o  Because ALL-IN-1 uses many unshared files such as the DOCDB and PDAF, 
       many resources will have only one lock taken out on them. This is why a 
       proportion of 2:1 is recommended rather than the VMS recommended value 
       of 4:1.
    
    o  The size of the resource hash table should be a power of two. This is a 
       side effect of the hashing algorithm.
    
    
       						Mark