[Linux-cachefs] Poor NFS performance - is cachefilesd working correctly?

Matthias Pigulla mp at webfactory.de
Mon Nov 26 14:26:20 UTC 2018


Dear list,

can you help me figure out if I am really getting a performance boost from cachefilesd? 

I am running the NFS server from OS X 10.13.4 to mount a web application directory into a Ubuntu 18.04 virtual machine (uname –r: 4.15.0-39-generic). My application has to stat a lot of files, and the performance I am seeing is extremely bad. I’ve tapped into the virtual network and found that a single request served by the application causes the exchange of more than 11K network packages.

My mount option the client side is just “fsc”; however, “mount” shows the following line for the volume:

10.20.30.1:/path/on/server on /path/in/virtual/machine type nfs (rw,relatime,vers=3,rsize=8192,wsize=8192,namlen=255,hard,proto=udp,timeo=11,retrans=3,sec=sys,mountaddr=10.20.30.1,mountvers=3,mountport=653,mountproto=udp,fsc,local_lock=none,addr=10.20.30.1)

/proc/fs/nfsfs/volumes shows FSC = yes.

The numbers given in /proc/fs/fscache/stats do not change significantly when serving requests. Here’s the output after a few runs:

FS-Cache statistics
Cookies: idx=2 dat=3865 spc=0
Objects: alc=1341 nal=0 avl=1341 ded=4
ChkAux : non=0 ok=1 upd=0 obs=0
Pages  : mrk=2902 unc=12
Acquire: n=3867 nul=0 noc=0 ok=3867 nbf=0 oom=0
Lookups: n=1341 neg=1339 pos=2 crt=1339 tmo=0
Invals : n=0 run=0
Updates: n=0 nul=0 run=0
Relinqs: n=6 nul=0 wcr=0 rtr=0
AttrChg: n=0 ok=0 nbf=0 oom=0 run=0
Allocs : n=0 ok=0 wt=0 nbf=0 int=0
Allocs : ops=0 owt=0 abt=0
Retrvls: n=1342 ok=0 wt=1 nod=1342 nbf=0 int=0 oom=0
Retrvls: ops=1342 owt=5 abt=0
Stores : n=2902 ok=2902 agn=0 nbf=0 oom=0
Stores : ops=1445 run=4347 pgs=2902 rxd=2902 olm=0
VmScan : nos=0 gon=0 bsy=0 can=0 wt=0
Ops    : pend=5 run=2787 enq=4347 can=0 rej=0
Ops    : ini=4244 dfr=1 rel=4244 gc=1
CacheOp: alo=0 luo=0 luc=0 gro=0
CacheOp: inv=0 upo=0 dro=0 pto=0 atc=0 syn=0
CacheOp: rap=0 ras=0 alp=0 als=0 wrp=0 ucp=0 dsp=0
CacheEv: nsp=0 stl=0 rtr=0 cul=0

Which numbers should I focus on to understand if the cache provides a reasonable hit ratio? What would you investigate/try?

Thanks a lot for your time and help!
-mp.





More information about the Linux-cachefs mailing list