NetBSD-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Very poor NFS I/O



joel.bertrand%systella.fr@localhost (=?UTF-8?Q?BERTRAND_Jo=c3=abl?=) writes:

>4/ make -j1 kicad (9.0), sources on a Raid5 volume shows a nfs mean
>throughput around 40 Mbps. nfs process eats 1 to 2 % od server CPU.

Averages can be misleading. NFS is very slow for metadata operations
because of network latency and a build (in particular pkgsrc) does
a huge amount of metadata operations.




>6/ dd if=3D/dev/zero of=3Dtest.dd count=3D10 bs=3D100M
>nfs  throughput rises until 850 Mbps (iftop)
>but load average on server side until 56 !

That looks ok. The server load comes from the number of NFS processes.


>hilbert:[~] > dd if=3D/dev/zero of=3Dtest.dd count=3D10 bs=3D100M
>10+0=C2=A0enregistrements lus
>10+0=C2=A0enregistrements =C3=A9crits
>1048576000=C2=A0octets (1,0 GB, 1000 MiB) copi=C3=A9s, 69,9613 s, 15,0 MB=
>/s

That doesn't correspond to the 850 Mbps number.

Repeating the test here (with RPI4 client against Atom N3150 server)
gets me about 50MByte/s.

Do you use any special NFS mount options ? The command 'mount -vv' on
a NetBSD client (FreeBSD too?) will dump the mount options in use, e.g.:

fud.local:/d/2 on /a/data type nfs (automounted, nosuid, fsid: 0xb0c/0x70b, reads: sync 0 async 0, writes: sync 0 async 0, [nfs: addr=x.x.x.x, port=2049, addrlen=16, sotype=1, proto=0, fhsize=0, flags=0x8240<intr,nfsv3,resvport>, wsize=32768, rsize=32768, readdirsize=8192, timeo=300, retrans=10, maxgrouplist=16, readahead=2, leaseterm=0, deadthresh=9])

On a Linux client the mount command is already verbose by default.


The nfsstat command may also reveal some information. On the server,
look for 'Server Errors'. On a NetBSD client (maybe FreeBSD too)
look for timeouts and retries under 'RPC Info'.

Linux also has a nfsstat command that shows equivalent numbers.




>> What is your vfs.nfs.iothreads value?
>	vfs.nfs.iothreads =3D -1

iothreads are a NFS client setting, -1 means the default of 4 threads.



Home | Main Index | Thread Index | Old Index