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

Chapter 6 113
Application Interface
Cache Advisories
write returns to the user. If the file is not extended by the write, the
times are updated in memory, and the call returns to the user. If the file
is extended by the operation, the inode is written before the write
returns.
Like direct I/O, the data synchronous I/O feature can provide significant
application performance gains. Since data synchronous I/O maintains
the same data integrity as synchronous I/O, it can be used in many
applications that currently use synchronous I/O. If the data synchronous
I/O does not allocate storage or extend the file, the inode is not
immediately written. The data synchronous I/O does not have any
alignment constraints, so applications that find it difficult to meet the
alignment constraints of direct I/O should use data synchronous I/O.
If the file is being extended or storage is allocated, data synchronous I/O
must write the inode change before returning to the application. This
case eliminates the performance advantage of data synchronous I/O.
The direct I/O and VX_DSYNC advisories are maintained on a
per-file-descriptor basis.
Other Advisories
The VX_SEQ advisory indicates that the file is being accessed
sequentially. When the file is being read, the maximum read-ahead is
always performed. When the file is written, instead of trying to
determine whether the I/O is sequential or random by examining the
write offset, sequential I/O is assumed. The pages for the write are not
immediately flushed. Instead, pages are flushed some distance behind
the current write point.
The VX_RANDOM advisory indicates that the file is being accessed
randomly. For reads, this disables read-ahead. For writes, this disables
the flush-behind. The data is flushed by the pager, at a rate based on
memory contention.
The VX_NOREUSE advisory is used as a modifier. If both VX_RANDOM and
VX_NOREUSE are set, pages are immediately freed and put on the quick
reuse free list as soon as the data has been used. If VX_NOREUSE is set
when doing sequential I/O, pages are also put on the quick reuse free list
when they are flushed. The VX_NOREUSE may slow down access to the file,
but it can reduce the cached data held by the system. This can allow
more data to be cached for other files and may speed up those accesses.