VERITAS File System 3.5 (HP OnlineJFS/JFS 3.5) Administrator's Guide (August 2003)
Chapter 4
Application Interface
Extent Information
60
Fixed Extent Sizes
VxFS uses the I/O size of write requests, and a default policy, when allocating space to a file. For some
applications, this may not work out well. These applications can set a fixed extent size, so that all new extents
allocated to the file are of the fixed extent size.
By using a fixed extent size, an application can reduce allocations and guarantee good extent sizes for a file.
An application can reserve most of the space a file needs, and then set a relatively large fixed extent size. If
the file grows beyond the reservation, any new extents are allocated in the fixed extent size.
Another use of a fixed extent size occurs with sparse files. The file system usually does I/O in page size
multiples. When allocating to a sparse file, the file system allocates pages as the smallest default unit. If the
application always does sub-page I/O, it can request a fixed extent size to match its I/O size and avoid wasting
extra space.
When setting a fixed extent size, an application should not select too large a size. When all extents of the
required size have been used, attempts to allocate new extents fail: this failure can happen even though there
are blocks free in smaller extents.
Fixed extent sizes can be modified by the VX_ALIGN flag. If the VX_ALIGN flag is set, then any future extents
allocated to the file are aligned on a fixed extent size boundary relative to the start of the allocation unit. This
can be used to align extents to disk striping boundaries or physical disk boundaries.
The VX_ALIGN flag is persistent and is returned by the VX_GETEXT ioctl.