Chris's Wiki :: blog/linux/NFSMountstatsBytesEvents Commentshttps://utcc.utoronto.ca/~cks/space/blog/linux/NFSMountstatsBytesEvents?atomcommentsDWiki2016-10-26T02:42:49ZRecent comments in Chris's Wiki :: blog/linux/NFSMountstatsBytesEvents.By Jeevan Patnaik on /blog/linux/NFSMountstatsBytesEventstag:CSpace:blog/linux/NFSMountstatsBytesEvents:36ad581c8955caf2b8a5a28d8d9aaa67f2867b19Jeevan Patnaikhttp://about.com/g1patnaik<div class="wikitext"><p>Hi, I understood as following what the difference among normal vs server vs direct.</p>
<p>First of all thanks to your reference link and encouragement to go through kernel code. The following is from the link you shared:</p>
<p>These counters can also help characterize which access methods</p>
<pre>
* are in use. DIRECT by itself shows whether there is any O_DIRECT
* traffic. NORMAL + DIRECT shows how much data is going through
* the system call interface. A large amount of SERVER traffic
* without much NORMAL or DIRECT traffic shows that applications
* are using mapped files.
</pre>
<p>SERVER: The actual requests made on NFS share. Some data flow happens through system call interface (comes from the NFS server i.e., NORMAL) + the rest uses cache. Hence. we see smaller values in NORMAL.
(NORMAL + CACHE = SERVER + LOCALDISKIO) </p>
<p>DIRECT: It show data trasferred using O_DIRECT method, it doesn't use cache at all.</p>
</div>2016-10-26T02:42:49ZBy Chris Siebenmann on /blog/linux/NFSMountstatsBytesEventstag:CSpace:blog/linux/NFSMountstatsBytesEvents:f5e50b2ecc303b4be8f3389fc7aab9d18d51b3acChris Siebenmann<div class="wikitext"><p>I believe that nfsread and nfswrite are not just the sum of the two
sorts of <code>read()</code> or <code>write()</code> calls. There is also at least <code>mmap()</code>'d
page reads and writes (what I called pageread and pagewrite) and there
may be other IO paths that are not fully accounted for in <code>bytes</code>.</p>
<p>(Note that I don't know how page reads and writes for Linux's special
huge pages are accounted for, if you can even use huge pages to <code>mmap()</code>
files.)</p>
</div>2014-03-13T18:19:51ZBy Anonymous on /blog/linux/NFSMountstatsBytesEventstag:CSpace:blog/linux/NFSMountstatsBytesEvents:ba396634712e7d5c57cfe985874a27cff112c784Anonymous<div class="wikitext"><p>"These count bytes read and written to the server with simple read() and write(), with read() and write() calls in O_DIRECT mode, the actual number of bytes read and written from the NFS server (regardless of how), and the number of pages (not bytes) read or written via directly mmap()'d files."</p>
<p>I'm not sure the description for nfsread/nfswrite is correct since this would mean that field1 + field3 = field5 and I have seen cases were field5 < field1 (quite notably, actually, while field3 == 0). Unfortunately, I can't explain what is causing this.</p>
<p>Otherwise, great stuff!</p>
</div>2014-03-13T10:19:23Z