nfs and getattr

J.A. Magallon (jamagallon@able.es)
Tue, 18 Mar 2003 02:47:00 +0100


A NFS client through 100Mb Ether takes a loooooooong time to read a database
from the server, which the server itself reads in less than 10 seconds.
The database is a scene description for render that basically 'includes'
the same small set of files (around 10) many times, instanced all over the
place...

Mount in client:
10.0.0.1:/home on /home type nfs (rw,nfsvers=2,noac,addr=10.0.0.1)

Looking at nfsstats in the server:
Server rpc stats:
calls badcalls badauth badclnt xdrcall
491811 0 0 0 0
Server nfs v2:
null getattr setattr root lookup readlink
1 0% 429338 87% 0 0% 0 0% 61474 12% 26 0%
read wrcache write create remove rename
963 0% 0 0% 1 0% 1 0% 0 0% 1 0%
link symlink mkdir rmdir readdir fsstat
0 0% 0 0% 3 0% 0 0% 2 0% 0 0%

Server nfs v3:
null getattr setattr lookup access readlink
1 100% 0 0% 0 0% 0 0% 0 0% 0 0%
read write create mkdir symlink mknod
0 0% 0 0% 0 0% 0 0% 0 0% 0 0%
remove rmdir rename link readdir readdirplus
0 0% 0 0% 0 0% 0 0% 0 0% 0 0%
fsstat fsinfo pathconf commit
0 0% 0 0% 0 0% 0 0%

What is that ton of getattr ? Do they come from nfs itself or must be
done by the reader via stat()s (perhaps it checks for file presence before
opening) ?

Is there any way to speedup that ?
Will nfs-v3 perform better ?

TIA

(Kernel is a patched (only bugfixes and bproc) 2.4.21-pre5. No -aa included.)

-- 
J.A. Magallon <jamagallon@able.es>      \                 Software is like sex:
werewolf.able.es                         \           It's better when it's free
Mandrake Linux release 9.1 (Cooker) for i586
Linux 2.4.21-pre5-jam0 (gcc 3.2.2 (Mandrake Linux 9.1 3.2.2-3mdk))
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/