Date: Mon, 23 Aug 2010 17:53:29 +1200 From: Nikolai Schupbach <nikolai@net24.co.nz> To: FreeBSD Mailing List <freebsd-questions@freebsd.org> Subject: NFSv3 and v4 slow with newnfs code Message-ID: <D75053FC-2720-4834-80FC-C8B2CB69D406@net24.co.nz>
next in thread | raw e-mail | index | archive | help
We are doing some performance testing on a new system. We have a = OpenSolaris NFS server sharing a folder on a ZFS filesystem and a = FreeBSD 8.1 NFS client. The machines are directly connected using 10GbE = (no switch in-between). Below are the performance figures we attained when doing simple 10GB dd = write (dd if=3D/dev/zero of=3D/mnt/file.tmp bs=3D1M count=3D10240) and = read (dd of=3D/dev/null if=3D/mnt/file.tmp) tests over NFS from the = FreeBSD client using various mount options. We performed these tests numerous times and all results are roughly the = same for each test. We have tuned kern.ipc.maxsockbuf, = net.inet.tcp.recvspace and net.inet.tcp.sendspace. This didn't result in = any significant differences in the test results. Both NFS client and = server NICs have MTU set to 9000; this improves performance noticeable. Currently it appears sticking with the stable NFSv3 code yields the best = results. Both NFSv3 and NFSv4 with the newnfs code has disappointing = performance. We installed Linux on the client machine as a test and = unfortunately Linux has the best performance by far.=20 Are there any other options we can use to improve the performance of = NFSv4 for large sequential writes and reads?=20 FreeBSD NFSv4 \w newnfs --- mount -t newnfs -o nfsv4 10.0.0.2:/volumes/datpool/test /mnt Writing: 10737418240 bytes transferred in 236.627936 secs, 43 MB/s Reading: 10737418240 bytes transferred in 131.385064 secs, 95 MB/s mount -t newnfs -o nfsv4,wsize=3D32768,rsize=3D32768 = 10.0.0.2:/volumes/datpool/test /mnt Writing: 10737418240 bytes transferred in 258.567077 secs, 39 MB/s Reading: 10737418240 bytes transferred in 120.646962 secs, 85 MB/s FreeBSD NFSv3 \w newnfs --- mount -t newnfs -o nfsv4 10.0.0.2:/volumes/datpool/test /mnt Writing 10737418240 bytes transferred in 215.963140 secs, 47 MB/s Reading 10737418240 bytes transferred in 101.110872 secs, 101 MB/s FreeBSD NFSv3=20 --- mount -t nfs -o nfsv3 10.0.0.2:/volumes/datpool/test /mnt Writing: 10737418240 bytes transferred in 161.739156 secs 63 MB/s Reading: 10737418240 bytes transferred in 72.327859 secs, 129 MB/s Linux NFSv4 (CentOS 5.5) --- Writing: 10737418240 bytes (11 GB) copied, 143.776 seconds, 75 MB/s Reading: 10737418240 bytes (11 GB) copied, 63.7012 seconds, 170 MB/s --Nik
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?D75053FC-2720-4834-80FC-C8B2CB69D406>