Tunable Kernel Parameters

Table Of Contents
Spinlock Pool
Spinlock Pool Parameters
Chapter 9
55
Spinlock Pool Parameters
The parameters related to spinlock pools for multiprocessor computers are used
similarly and are documented together here. Each parameter allocates the specified
number of spinlocks for the corresponding system resource:
These parameters are for use by advanced users only who have a thorough
understanding of how spinlocks are used by multiple processors and how the number of
spinlocks needed are related to system size and complexity. Do not change these from
their default value unless you understand the consequences of any changes. In general,
these values should not be altered without the advice of HP support engineers who are
thoroughly familiar with their use.
Setting these parameters to inappropriate values can result in severe performance
problems in multiprocessor systems.
Acceptable Values
All of these parameters have the same minimum and maximum values. Only the
defaults are different as indicated:
Minimum 64
Maximum 4096
Default 64 (ftable_hash_locks, io_ports_hash_locks)
Default 128 (bufcache_hash_locks, pfdat_hash_locks,
region_hash_locks, sysv_hash_locks, vnode_hash_locks,
vnode_cd_hash_locks)
Default 256 (chanq_hash_locks)
Specify a value that is an integer exponent of 2. If you specify any other value, SAM or
the kernel itself will change the parameter value to the next larger integer exponent of
two (for example, specifying 100 results in the value of 128. For more information, see
“How to Specify Configurable Parameter Values” on page 13.
Description
In simple terms, spinlocks are a mechanism used in multiple-processor systems to
control the interaction of processors that must be held off while waiting for another
processor to finish a task so the results can be passed to the waiting processor. Spinlocks
control access to file system vnodes, I/O ports, buffer cache, and various other resources.
Earlier HP-UX versions allocated a fixed number of spinlocks for all resources, but
beginning with HP-UX 11.0, spinlocks can be allocated for each resource type to
accommodate very large and complex systems.
In general, if the system is encountering lock contention problems that are associated
with one of these hashed pools, first identify the resource spinlock pool that is associated
with the contention, then increase the spinlock pool parameter for that resource.
As stated above, these parameters are for use by experienced, knowledgeable system
administrators only. They should not be altered unless you are quite certain that what
you are doing is the correct thing to do.