Is there a command to drop the ZFS and UFS disk caches? (Preferably just one folder hierarchy.)

I'm trying to tuning the performance settings of an application that read/writes data from a large number of files. Mostly read.

In actual use, the app will only run once in a while so the files in question will not likely be cached.

However, since I am testing multiple times in a row, Solaris is trying to be helpful by keeping this files in memory.

Between benchmark runs, can I instruct Solaris to drop anything under /path/to/data from it's caches?

Thank you

  • What are you trying to achieve? Are you seeing performance problems and want to see if the cache in memory is the culprit?
    – mghocke
    Sep 14, 2012 at 17:16

1 Answer 1


There is no way to selectively drop the cache per directory.

For a whole file system, running lockfs -f /directory will flush all of this directory file system cached data on disk.

If for some reason, this doesn't have the wanted effect, a more radical way is to unmount/remount the filesystem (UFS) and export/import the pool (ZFS).

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .