Veritas File System 4.1 Administrator's Guide (HP-UX 11i v3, February 2007)

VxFS Performance: Creating, Mounting, and Tuning File Systems
I/O Tuning
Chapter 2 51
If the file system is being used with VxVM, it is advisable to let the VxFS I/O parameters get set to default
values based on the volume geometry.
If the file system is being used with a hardware disk array or volume manager other than VxVM, try to align
the parameters to match the geometry of the logical disk. With striping or RAID-5, it is common to set
read_pref_io to the stripe unit size and read_nstream to the number of columns in the stripe. For
striped arrays, use the same values for write_pref_io and write_nstream, but for RAID-5 arrays, set
write_pref_io to the full stripe size and write_nstream to 1.
write_throttle The write_throttle parameter is useful in special situations
where a computer system has a combination of a large amount of
memory and slow storage devices. In this configuration, sync
operations (such as fsync()) may take long enough to complete
that a system appears to hang. This behavior occurs because the file
system is creating dirty buffers (in-memory updates) faster than they
can be asynchronously flushed to disk without slowing system
performance.
Lowering the value of write_throttle limits the number of dirty
buffers per file that a file system will generate before flushing the
buffers to disk. After the number of dirty buffers for a file reaches the
write_throttle threshold, the file system starts flushing buffers
to disk even if free memory is still available.
The default value of write_throttle is zero, which puts no limit
on the number of dirty buffers per file. If non-zero, VxFS limits the
number of dirty buffers per file to write_throttle buffers.
The default value typically generates a large number of dirty buffers,
but maintains fast user writes. Depending on the speed of the storage
device, if you lower write_throttle, user write performance
may suffer, but the number of dirty buffers is limited, so sync
operations will complete much faster.
Because lowering write_throttle may in some cases delay write
requests (for example, lowering write_throttle may increase
the file disk queue to the max_diskq value, delaying user writes
until the disk queue decreases), it is advisable not to change the value
of write_throttle unless your system has a combination of large
physical memory and slow storage devices.