HP JFS 3.3 and HP OnLineJFS 3.3 VERITAS File System 3.3 System Administrator's Guide

Chapter 5 107
Performance and Tuning
I/O Tuning
initial_extent_
size
Changes the default initial extent size. VxFS determines, based on the
first write to a new file, the size of the first extent to be allocated to the
file. Normally the first extent is the smallest power of 2 that is larger
than the size of the first write. If that power of 2 is less than 8K, the first
extent allocated is 8K. After the initial extent, the file system increases
the size of subsequent extents (see max_seqio_extent_size) with
each allocation. Since most applications write to files using a buffer size
of 8K or less, the increasing extents start doubling from a small initial
extent. initial_extent_size can change the default initial extent
size to be larger, so the doubling policy will start from a much larger
initial size and the file system will not allocate a set of small extents at
the start of file. Use this parameter only on file systems that will have a
very large average file size. On these file systems it will result in fewer
extents per file and less fragmentation. initial_extent_size is
measured in file system blocks.
max_buf_data_size The maximum buffer size allocated for file data; either 8K bytes or 64K
bytes. Use the larger value for workloads where large reads/writes are
performed sequentially. Use the smaller value on workloads where the
I/O is random or is done in small chunks. 8K bytes is the default value.
max_direct_iosz The maximum size of a direct I/O request that will be issued by the file
system. If a larger I/O request comes in, then it is broken up into
max_direct_iosz chunks. This parameter defines how much
memory an I/O request can lock at once, so it should not be set to more
than 20 percent of memory.
max_diskq Limits the maximum disk queue generated by a single file. When the file
system is flushing data for a file and the number of pages being flushed
exceeds max_diskq, processes will block until the amount of data
being flushed decreases. Although this doesn't limit the actual disk
queue, it prevents flushing processes from making the system
unresponsive. The default value is 1 MB.
max_seqio_extent_si
ze
Increases or decreases the maximum size of an extent. When the file
system is following its default allocation policy for sequential writes to
a file, it allocates an initial extent which is large enough for the first
write to the file. When additional extents are allocated, they are
progressively larger (the algorithm tries to double the size of the file
with each new extent) so each extent can hold several writes worth of
data. This is done to reduce the total number of extents in anticipation of
continued sequential writes. When the file stops being written, any
unused space is freed for other files to use. Normally this allocation
stops increasing the size of extents at 2048 blocks which prevents one
file from holding too much unused space. max_seqio_extent_size
is measured in file system blocks.