Thanks for the script.  Here is some sample output from 'sudo
./nfssvrtop -b 512 5' (my disks are 512B-sector emulated and the pool
is ashift=9, some benchmarking didn't show much difference with
ashift=12 other than giving up 8% of available space) during a copy
operation from 37.30 with sync=standard:

2012 Jun 14 13:59:13, load: 0.68, read: 0        KB, swrite: 0
KB, awrite: 557056   KB
Ver     Client           NFSOPS   Reads SWrites AWrites Commits
Rd_bw  SWr_bw  AWr_bw    Rd_t   SWr_t   AWr_t   Com_t  Align%
3       xxx.xxx.37.30       108       0       0     108       0
0       0  111206       0       0     396 1917419     100
a bit later...
3       xxx.xxx.37.30       109       0       0     108       0
0       0  111411       0       0     427       0     100

sample output from the end of 'zpool iostat -v 5 mainpool' concurrently:
logs                           -      -      -      -      -      -
  c31t3d0s0                 260M  9.68G      0  1.21K      0  85.3M
  c31t4d0s0                 260M  9.68G      0  1.21K      0  85.1M

In case the alignment fails, the nonzero entries are under NFSOPS,
AWrites, AWr_bw, AWr_t, Com_t and Align%.  The Com_t (average commit
time?) column alternates between zero and a million or two (the other
columns stay about the same, the zeros stay zero), while the "Commits"
column stays zero during the copy.  The write throughput to the logs
varies quite a bit, that sample is a very high mark, it mainly
alternates between almost zero and 30M each, which is kind of odd
considering the copy speed (using gigabit network, copy speed averages
around 110MB/s).

When I 'zfs set sync=disabled', the output of nfssrvtop stays about
the same, except the Com_t stays 0, and the log devices also stay 0
for throughput.  Could you enlighten me as to what "Com_t" measures
when "Commits" stays zero?  Perhaps the nfs server caches asynchronous
nfs writes how I expect, but flushes its cache with synchronous
writes?

Thanks,
Tim

On Thu, Jun 14, 2012 at 9:24 AM, Richard Elling
<richard.ell...@gmail.com> wrote:
> On Jun 13, 2012, at 4:51 PM, Daniel Carosone wrote:
>
>> On Wed, Jun 13, 2012 at 05:56:56PM -0500, Timothy Coalson wrote:
>>> client: ubuntu 11.10
>>> /etc/fstab entry: <server>:/mainpool/storage       /mnt/myelin     nfs
>>> bg,retry=5,soft,proto=tcp,intr,nfsvers=3,noatime,nodiratime,async       0
>>>    0
>>
>> nfsvers=3
>>
>>> NAME              PROPERTY  VALUE     SOURCE
>>> mainpool/storage  sync      standard  default
>>
>> sync=standard
>>
>> This is expected behaviour for this combination. NFS 3 semantics are
>> for persistent writes at the server regardless - and mostly also
>> for NFS 4.
>
> NB, async NFS was introduced in NFSv3. To help you easily see NFSv3/v4
> async and sync activity, try nfssvrtop
>        https://github.com/richardelling/tools
>
>  -- richard
>
> --
>
> ZFS and performance consulting
> http://www.RichardElling.com
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
_______________________________________________
zfs-discuss mailing list
zfs-discuss@opensolaris.org
http://mail.opensolaris.org/mailman/listinfo/zfs-discuss

Reply via email to