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

nfs performance tuning for hp-ux 11.0 and 11i systems page 85
Notes:
Page 85July 22, 2002
Copyright 2002 Hewlett- Packard Company
cachefs
CacheFS Performance Considerations
Create separate caches for each NFS filesystem
Ø Pools of cachefsd threads are created on a per-cache basis
Use dedicated front filesystems for each cache
Ø Avoids having the LRU algorithm remove cached files because of
non-CacheFS filesystem usage
Use the rpages mount option when appropriate
Ø Dramatic performance increase for NFS-based applications
The maxcnodes kernel parameter
Ø Determines the size of the CacheFS-specific inode table
The recommendation is to create a separate cache for each CacheFS mount point,
thus avoiding the case where data from one NFS filesystem forces CacheFS to
remove files cached by another NFS filesystem when the cache disk space or inode
resource thresholds are reached.
It is important to understand that the kernel creates cachefsd thread pools on a per-
cache basis not a per-CacheFS mount basis. In other words, if three NFS
filesystems share a single cache, all requests for these cached resources will be
serviced by a single pool of cachefsd threads. If, however, there are three
separate caches configured, and each of the NFS filesystems are mounted using
different caches, then each cached filesystem will be serviced by its own pool of
threads. By creating separate caches for each CacheFS filesystem, the kernel
creates dedicated pools of cachefsd threads to service each CacheFS mount point.
The maxcnodes kernel parameter configures the size of the CacheFS-specific inode
table. By default, this parameter is set to the same value as ncsize, which is sized
based on ninode. Typically this parameter is tuned by tuning ncsize or ninode.