Summery File cache on Solaris

From: Mike DeMarco (
Date: Fri Dec 15 2000 - 12:19:14 CST

Lots of good answers:

One thing I forgot to mention was that this is a VXFS filesystem.
So the answers translate to mincache instead of forcedirectio.

Here are the answers, Question is repeated at the bottom.

Thanks to all

If you are running Solaris 7 (or higher I think) and your data filesystems
are UFS, then you can mount them using the option 'noatime' (that will
prevent updating the access time info on each inode, reducing overall disk
usage) and 'forcedirectio' (will disable the Solaris filesystem cache for
this filesystem). See the mount_ufs man page.


the two work together quite nice thankyou, and you can't turn of
filesystem cache AFAIK. In solaris 8 the algorithm for file system cache
is dramatically and make huge performace benefits with Oracle.

I tried setting priority paging (which is the thing your DBA is talking
about) by installing the appropriate patch for Solaris 2.6 (it comes by
default with Solaris 7,8) and setting priority paging=1 in /etc/system
and rebooting.It made things worse on heavy write-access to Oracle, but
made things better for read-access so YMMV.

The only way of not caching Oracle's data files is to use raw partitions
for the oracle dbf's. But then you can get into a real mess when you
want to restore things. The performance gains against UFS nowadays don't
IMHO really justify doing this anyhow (probably about 15% max, as
opposed to about 100% in the old days). You can get more performace
benefits by properly tuning Oracle and laying out the disks/datafiles in
the optimal manner.

Just my 2cents having done Oracle DBA-ing and Solaris Sysadmining. the
O'reilly book on Oracle perf tuning has lots to say one this.


do a man on mount_ufs and look at the directio option.


As far as I know Oracle can be run on raw devices to avoid filesystem cache.


You can entirely disable file caching on a file system basis by
mounting that file system
with the forcedirectio option. Here is a line from my /etc/vfstab which
mounts an oracle disk in direct IO mode.

/dev/dsk/c3t65d51s0 /dev/rdsk/c3t65d51s0 /orafs06 ufs 2 yes

You can find some information on the forcedirectio option in the man page
for mount_ufs.

Original Message

Performance Gurus:
        I have a Oracle DBA that says since Oracle caches its own data that
the filesystem cache is redundant and should be turned off, or at least
drastically reduced to allow for better performance.
        I have Gone through SUN performance Tuning and can find no reference

to turning off filesystem cache. It does explain (quite nicely I might add)
filesystem caching.
        Has anyone out there ever tuned file cache to gain oracle
I will Summarize.


sunmanagers mailing list

This archive was generated by hypermail 2.1.2 : Fri Sep 28 2001 - 23:14:24 CDT