Date: Fri, 30 Jan 1998 22:14:02 -0500 (EST) From: "John W. DeBoskey" <jwd@unx.sas.com> To: freebsd-current@FreeBSD.ORG Cc: jwd@unx.sas.com (John W. DeBoskey) Subject: NFS v3 3.0-Current performance questions Message-ID: <199801310314.AA16700@iluvatar.unx.sas.com>
next in thread | raw e-mail | index | archive | help
Hello, I have a series of NFS v3 performance related questions which I would like to present. The setup: 6 266Mhz PII 128Meg computers hooked up to a network appliance file server via NFS V3. Running 3.0-980128-SNAP. Problem: This system is running a distributed make process which accesses (minimum) 2564 h files in 20+ directories located on the file server. I would like to buffer as much of (if not all) the directory information concerning these files and the file contents. Questions: Is it possible to tune the amount of cached directory information in the NFS v3 protocol? Is is possible to tune the amount of file datablock contents which are cached? From nfsstat, note the number of BioR hits and misses from simply running a job which continuously cats the files (of course I may be mis-interpreting the output). Cache Info: Attr Hits Misses Lkup Hits Misses BioR Hits Misses BioW Hits Misses 69997 9172 43654 8700 10006 12674 0 0 fyi: The time to cat all the files to /dev/null : 3 iterations : 6.78s real 0.05s user 1.42s system 6.82s real 0.03s user 1.41s system 6.78s real 0.01s user 1.46s system ( I'd like to cut this by at least 50% :-) Using the default (NBUF=0) value causes nbuf to aquire the value 3078 for each system by default. I have set NBUF=8196 with no real performance gain, so I don't think this is the right direction. Comments? I beleive I can get a big gain if I can simply reduce the number of BioR Misses. Again, Comments? From a performance testing standpoint, it would be nice if we could add a 'clear the counters' option to nfsstat so that root could reset the stat numbers to zero. Comments? I do not beleive I need to add memory to these boxes either. Note the number of free vm pages in the following vmstat output. $ vmstat -s 127855 cpu context switches 877149 device interrupts 52881 software interrupts 11625 traps 91484 system calls 0 swap pager pageins 0 swap pager pages paged in 0 swap pager pageouts 0 swap pager pages paged out 243 vnode pager pageins 1165 vnode pager pages paged in 0 vnode pager pageouts 0 vnode pager pages paged out 0 page daemon wakeups 0 pages examined by the page daemon 0 pages reactivated 4287 copy-on-write faults 3173 zero fill pages zeroed 5 intransit blocking page faults 12564 total VM faults taken 20366 pages freed 0 pages freed by daemon 5237 pages freed by exiting processes 296 pages active 1657 pages inactive 1243 pages in VM cache 3427 pages wired down 25252 pages free 4096 bytes per page 79741 total name lookups cache hits (81% pos + 0% neg) system 0% per-directory deletions 0%, falsehits 0%, toolong 0% $ Any and all comments are welcome. Thanks, John -- jwd@unx.sas.com (w) John W. De Boskey (919) 677-8000 x6915
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199801310314.AA16700>