NAME
hdlpreg_hash_locks — determines the size of the pregion spinlock pool
VALUES
Allowed values
64 to 262144
DESCRIPTION
Global kernel structures containing information on a running process
or memory usage are frequently accessed or modified by several threads
concurrently.
To prevent race conditions, these structures are protected by spinlocks
(kernel data structures used for synchronization) which allow only the
spinlock 'holder' to proceed, while all others attempting to access
the structure must wait.
Hashed spinlocks are used when each instance of such a data structure
is to be protected, and there are several instances.
Using a single spinlock for all instances would cause too much
contention, but using one spinlock per structure wastes memory while
the majority of the locks are unused at any given time.
By allocating a pool of hashed locks, a hash function picks one lock
per group of structures, reducing contention while conserving memory.
This tunable sets the size of such a pool for the
pregion
data structure spinlocks.
Who Is Expected to Change This Tunable?
Only HP Field engineers should change the value of this tunable.
Restrictions on Changing
Changes to this tunable take effect at the next reboot.
When Should the Value of This Tunable Be Raised?
This tunable should be raised on systems with both low memory
contention and high lock contention due to a large number of
pregion
structures.
Typically, such a system would be a large memory system with a
large number of processes or threads.
What Are the Side Effects of Raising the Value?
More memory is used by the kernel.
When Should the Value of This Tunable Be Lowered?
This tunable should only be lowered on systems with high contention
for physical memory and few processes and threads.
The memory saved by making the table smaller will be freed for
general use, and could cause contention if many
pregions
are present and requiring locks.
What Are the Side Effects of Lowering the Value?
Hash contention for
pregion
locks is more likely, which increases
the possibility of threads needing to wait on the lock shared
between two or more
pregions.
What Other Tunables Should Be Changed at the Same Time?
None.
WARNINGS
All HP-UX kernel tunable parameters are release specific.
This parameter may be removed or have its meaning changed in
future releases of HP-UX.
AUTHOR
hdlpreg_hash_locks
was developed by HP.