Hi,
I am helping a Solaris+VxFS customer to use directio for an application that does not use O_SYNC. The customer reported that only setting convosync=direct does not have much performance benifits, but by adding mincache=direct there is a significant performance gain.
By definitions:
"mincache=direct will cause any reads without the O_SYNC flag, or any writes without the O_SYNC flag, VX_DSYNC, VX_DIRECT, and VX_UNBUFFERED caching advisories, to be handled as if the VX_DIRECT caching advisory had been set."
and
"convosync=direct will cause any reads or writes with the O_SYNC flag to be handled as if the VX_DIRECT caching advisory had been set. "
This application doesn't use read/write() with O_SYNC.
My question is:
Is "convosync=direct" mandatory for VxFS using directio?
or
Can we use "mincache=direct" only for VxFS directio? And why?
Thanks in advance for any explanation.