<div dir="ltr">Thanks for clarification Niels, but I am not yet clear if the NFS used to mount GlusterFS is the same as stock NFS in the kernel tree (which uses FS-Cache)?<div>My other question is that does NFS client of GlusterFS commits and blocks for each write(not flush, just a write)? or does it use &quot;<span style="color:rgb(0,0,0);white-space:pre-wrap">weak cache consistency model&quot; allowing some buffering for writes.</span></div><div><span style="color:rgb(0,0,0);white-space:pre-wrap"><br></span></div><div><span style="color:rgb(0,0,0);white-space:pre-wrap">Thanks,</span></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Apr 28, 2015 at 7:29 AM, Niels de Vos <span dir="ltr">&lt;<a href="mailto:ndevos@redhat.com" target="_blank">ndevos@redhat.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">On Mon, Apr 27, 2015 at 02:56:14PM -0400, Behrooz Shafiee wrote:<br>
&gt; Hello all,<br>
&gt;<br>
&gt;  I am a graduate student at University of Waterloo and working on<br>
&gt; filesystem. I have two questions about GlusterFS that I will appreciate if<br>
&gt; anyone can comment about.<br>
&gt;<br>
&gt; First, does GlusterFS FUSE client bypass Linux page cache mechanism(mount<br>
&gt; with -o direct_io)? I have a machine with 64 GB of memory and when I write<br>
&gt; a about 30GB of data into that machine (less than available memory) and<br>
&gt; read it again, I see the reads are server through network, even though<br>
&gt; those file could/are in the Linux page cache memory. It seems that&#39;s the<br>
&gt; case both for NFS and FUSE clients.<br>
<br>
</span>Direct IO is intended to not use caches where possible. What you<br>
describe above is the expected behaviour. You can find more details in<br>
&#39;man 2 open&#39; for the O_DIRECT flag.<br>
<br>
The Linux kernel has many tunables for the page cache. You can find many<br>
of them under /proc/sys/vm/ , some are documented in &#39;man 5 proc&#39;.<br>
<span class=""><br>
&gt; My second question is about FS-Cache and if GlusterFS does inode tree cache<br>
&gt; on its FUSE clients or not. I know it exist in NFS but is the NFS client of<br>
&gt; GlusterFS same as regular NFS?<br>
<br>
</span>FS-Cache is a client-side option for some filesystems. The Linux kernel<br>
supports FS-Cache for its NFS-client. Some work has been done to add<br>
support for FS-Cache to FUSE, but that never became stable enough to get<br>
included in the upstream Linux kernel. Vimal Kumar did most of the work<br>
for that, and had a proof-of-concept. It will need updating for the<br>
current kernel version and some stability fixes. One of the email<br>
threads is here:<br>
<br>
    <a href="http://thread.gmane.org/gmane.comp.file-systems.gluster.devel/7877" target="_blank">http://thread.gmane.org/gmane.comp.file-systems.gluster.devel/7877</a><br>
<br>
Vimal was planning to continue working on this, and your email is a<br>
great reminder to get a status update from him.<br>
<br>
Cheers,<br>
Niels<br>
</blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature"><div dir="ltr"><font color="#888888">Behrooz</font><br></div></div>
</div>