Thomas Nau | 24 Nov 2011 17:15
Picon
Favicon

NFSv3 versus NFSv4 performance

Dear all

We recently ran a few tests using filebench with different workloads
such as varmail and others. In some cases, especially the varmail test
run, v3 performs much better than v4 with repect to the total number
of OPs handled per interval. We destroy the pool and reboot the server
after each test so there should be no dependency left. Also the
workload is big enough to fit into main memory for the client as well as
for the server. Given that we tend to use v3 for a few hundred clients
but honetsly, I expected v4 to be superior. Both client and server run
Solaris 11 with a few tweaks in /etc/system such as the number of connections, ...

For example pre-allocating 80.000 files takes about 270 seconds in v3 versus 357
in NFSv4. The total IOs for a mix of create/delete/append/... ops are

v3:
IO Summary:      6894774 ops, 11490.8 ops/s, (1768/1768 r/w)  53.4mb/s,    662us cpu/op,   4.5ms latency

v4:
IO Summary:      3084085 ops, 5139.9 ops/s, (791/791 r/w)  30.1mb/s,    921us cpu/op,  10.1ms latency

Any hints or recommendations?

Thomas

Picon
Favicon

Re: NFSv3 versus NFSv4 performance

Hi

We use ZFS Storage Appliances to store mailboxes. Our application manages them in maildir format (at least 
almost...)

For our workload (many thousand POP3/IMAP4 concurrent sessions and lots of SMTP traffic) NFSv4 works just 
fine. IIRC correctly, NFSv4 issues many more synchronous writes than NFSv3, so be sure to have your ZFS
intend log 
devices on fast SSDs.

Cheers
Mika

>----Ursprüngliche Nachricht----
>Von: Thomas.Nau <at> uni-ulm.de
>Datum: 24.11.2011 
17:15
>An: <opensolaris-discuss <at> opensolaris.org>
>Betreff: [osol-discuss] NFSv3 versus NFSv4 performance
>
>Dear all
>

>
>We recently ran a few tests using filebench with different workloads
>such as varmail and others. In some cases, 
especially the varmail test
>run, v3 performs much better than v4 with repect to the total number
>of OPs handled per 
interval. We destroy the pool and reboot the server
(Continue reading)


Gmane