Open System Services Programmer's Guide

Performance and Reliability Tradeoffs
As Table 7 shows, you must choose between performance and reliability in OSS file I/O. The
higher the reliability, the slower the performance.
For example, if you cannot afford to lose any file I/O operations, you should set the FTIOMODE
and NORMALIOMODE attribute to UNBUFFEREDCP. If you have set this attribute and the primary
processor fails, the disk process in the backup processor gets the information it needs to pick up
where the disk process in the primary processor left off. This information includes any file locks
and the read/write position in the file. Using UNBUFFEREDCP means that you do not lose any file
I/O operations.
If DP2BUFFERED or OSSBUFFERED is used for NORMALIOMODE, the file is opened without using
the O_SYNC bit, and there is a processor failure:
A checkpoint does not occur between the disk process in the failed processor and the disk
process in the backup processor.
The file descriptor becomes invalid, which means you lose the read/write position in the file.
This happens whether file caching is on or off.
You can reset the read/write position in the file by closing the file with the invalid file descriptor,
reopening it, and resuming I/O operations. However, if file caching was off, you lose the file
operation in process when the processor failed. If file caching was on, you lose all file operations
in the cache when the processor failed.
OSS I/O performance is affected by the following:
Whether free-space table caching is enabled or disabled for the disk process
Whether OSS file caching is enabled or disabled
Using the fast-create option when creating a fileset
Having a volume list for filesets in the superblock
Setting the trackall flag in the /etc/profile file to create tracked aliases
Leaving too many unused processes running
See the Open System Services Shell and Utilities Reference Manual, Open System Services
Installation Guide, and Open System Services Management and Operations Guide for more
information.
Performance Considerations 89