NFS Performance Tuning for HP-UX 11.0 and 11i Systems

nfs performance tuning for hp-ux 11.0 and 11i systems page 109
Notes:
Page 109July 22, 2002
Copyright 2002 Hewlett- Packard Company
buffer
cache
Static vs. Dynamic Allocation
Static Allocation of Buffer Cache Memory
Ø Configured via nbuf and/or bufpages parameters
Ø Fixed number of pages allocated, regardless of system memory
Ø 100% allocated at boot time from contiguous memory
Ø Pages are “off limits” to vhand in memory pressure situations
Dynamic Allocation of Buffer Cache Memory
Ø Configured via dbc_min_pct and dbc_max_pct parameters
Ø Based on % of physical memory
Ø Only dbc_min_pct of memory allocated at boot time
Ø Pages can be stolen by vhand (down to dbc_min_pct)
Two methods of configuring buffer cache are supported: static and dynamic. The
static method allocates a fixed number of 4KB buffers (configured via the bufpages
kernel variable) and buffer header structures (configured via the nbuf kernel
variable) at system boot time. The dynamic buffer cache method allocates buffer
space and supporting data structures as they are needed, using defined minimum
(dbc_min_pct kernel variable) and maximum (dbc_max_pct kernel variable) values
to establish overall buffer cache size limits.
When a system experiences memory pressure, the system process vhand is invoked
to try to reclaim memory pages from areas where it is not immediately needed so
that processes which are memory starved can use it. One of the first places vhand
looks for memory resources is dynamic buffer cache. Under severe memory
pressure conditions, vhand will steal pages from dynamic buffer cache 3 times
more often than anywhere else on the system (i.e. ordinary processes, shared
memory, shared libraries, or memory-mapped regions). If no buffer cache pages
are available (i.e. dbc_min_pct is reached or static buffer cache is configured) then
vhand may need to deactivate processes to reclaim their memory pages.