DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH PRINT BOOK
 
LKP System Management

General tuning considerations

VxFS, the default UnixWare 7 filesystem, provides a range of performance/reliability tradeoffs through various mount options which control journaling and data caching policies. Current defaults promote the highest degree of reliability, but with a resulting performance cost.

At the other end of the spectrum, you can turn off all journaling and select the most lax data caching policies, resulting in improved performance, but decreased reliability.

However, turning off journaling is not practical because doing so creates serious risk that the filesystem will be unrecoverable after a crash. Furthermore, use of reliable file storage does not eliminate the need for journaling or some other type of filesystem recovery mechanism. The OS manipulates and caches filesystem data in memory, and at times the cached data is inconsistent with what is stored on disk. As a result, a sudden or unexpected machine halt could potentially leave the filesystem and its data in an unrecoverable state. Journaling provides a reasonably efficient mechanism for keeping the filesystem in a recoverable state at all times.

There are ways short of turning off journaling to improve performance with an acceptable (depending on your organization's needs) decrease in reliability. The following sections describe VxFS options which allow such performance/reliability tradeoffs.

Performance/reliability tradeoffs for journaling

Journaling (that is, logging) enables filesystem recoverability and reliability of filesystem structural data. VxFS provides four different levels of logging. In order of reliability, these are:

With the log option, which is the default, the filesystem logs filesystem structural data changes to disk immediately. The delaylog and tmplog options introduce increasing amounts of delay in the logging of structural data, improving performance while decreasing reliability slightly. nolog disables logging altogether.

With log, delaylog, or tmplog, the filesystem is recoverable after a crash. With nolog, the filesystem may be unrecoverable following a crash.

Performance/reliability tradeoffs for data caching

Other VxFS mount options affect the performance/reliability tradeoff by controlling caching of file data and the policies for writing file data cached in memory to disk. In order of decreasing reliability and increasing performance, these options are:


NOTE: The mincache=``tmpcache'' option is only available with the Advanced VxFS filesystem. (There are some other caching options available with VxFS, but they are not relevant to this discussion.)

With mincache=``closesync'', cached file data is flushed to disk periodically as a file is written, and all unwritten cached file data is written to disk when the file is closed. When no mincache option is used, cached file data is flushed periodically, but uncached file data is not written to disk immediately upon close of a file. mincache=``tmpcache'' increases data caching further, improving performance at the cost of some decrease in data reliability.

What to use

If you want to optimize performance, and you are willing to accept some decrease in reliability, you might want to use the advanced VxFS filesystem with tmplog and mincache=``tmpcache''. This gives good performance while still maintaining a degree of reliability comparable to traditional UNIX.

mincache=``tmpcache'' can only be used with advanced VxFS. If the basic VxFS is used instead of advanced VxFS, then we recommend ``tmplog'' and ``no mincache'' options. In either event, we advise turning off the mincache=``closesync'' mount option, which reverses the UnixWare 7 installation default.

Another modification we have found which generally improves performance is to increase the size of the filesystem log at the time the filesystem is created. Increasing the size of the log allows the filesystem to defer committing transactions, which in turn allows it to cache data longer as well as reduce and/or smooth out disk I/O load.


Next topic: Tuning for Linux applications
Previous topic: Performance and tuning

© 2002 Caldera International, Inc. All rights reserved.
UnixWare 7 Release 7.1.3 - 17 October 2002