Managing NFS and KRPC Kernel Configurations in HP-UX 11i v3 (762807-001, March 2014)

2.4.5
rpc_svc_reducepoolcontention
Description
The KRPC Server processes the incoming requests by a pool of service threads. These threads
contend for the pool's resources while servicing the incoming requests. The rpc_svc_reducepoolcontention
tunable reduces the contention for the pool's resources by optimizing the usage of the pool's resources.
This optimization results in performance improvement of certain workloads.
Tested Values
Default: 0
Min: 0
Max: 1
Restrictions on Changing
The rpc_svc_reducepoolcontention is static. System reboot is required to activate the changes
made to this tunable.
Modifying the Value
Enable this tunable to reduce the contention for pool's resources by optimizing the usage of
pool's resources.
2.4.6
rpc_svc_cpu_binding
Description
The rpc_svc_cpu_binding tunable specifies whether NFS/TCP service threads are bound to specific
CPUs or can bind to any available CPU. When enabled, the server attempts to bind the NFS service
threads to the CPU responsible for servicing the interrupt of the network card on which the NFS
request arrived. By doing so the same CPU, processes the NFS request from the time it arrives at the
server's network interface until the NFS reply is sent back to the client.
In many environments, allowing a single CPU to manage the entire NFS request provides significant
CPU cache coherency benefits and improves overall NFS performance. By default, no attempt is
made to schedule the NFS service threads on specific CPUs. The spawned service thread can be
scheduled on any available CPU and the thread can be switched to another CPU at any time while
processing the NFS request.
For example, if CPU0 is assigned the interrupt of the network interface that an NFS request arrives on,
it processes the inbound network packet. However, the NFS service thread that processes the NFS
request itself, whether this is a READ, a WRITE, a LOOKUP, or others might be bound to a different
CPU - say CPU1.
This switching of CPUs can result in a CPU cache miss. In many environments this CPU cache miss
penalty is negligible and does not affect overall NFS performance. However, on large-scale NFS
servers (servers having many CPUs, network adapters, and servicing many NFS clients) the cache
miss penalties can be significant and these servers might see a performance benefit by enabling the
rpc_svc_cpu_binding tunable to improve the memory cache behavior.
Tested Values
Default: 0 (CPU bind functionality is disabled)
Min: 0
Max: 1 (CPU bind functionality is enabled)
Restrictions on Changing
The rpc_svc_cpu_binding tunable is dynamic. System reboot is not required to activate a change
made to this tunable.