Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 19 Mar 2010 21:32:50 -0500
From:      Adam Vande More <amvandemore@gmail.com>
To:        Dan Naumov <dan.naumov@gmail.com>
Cc:        freebsd-net@freebsd.org, freebsd-performance@freebsd.org, FreeBSD-STABLE Mailing List <freebsd-stable@freebsd.org>, freebsd-questions@freebsd.org
Subject:   Re: Samba read speed performance tuning
Message-ID:  <6201873e1003191932g447cb261rbc928324408b959b@mail.gmail.com>
In-Reply-To: <cf9b1ee01003191828g5bea26e7i2ecc1d7135ea5102@mail.gmail.com>
References:  <cf9b1ee01003191414q35d884f1oaa72e700305abd51@mail.gmail.com> <cf9b1ee01003191828g5bea26e7i2ecc1d7135ea5102@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, Mar 19, 2010 at 8:28 PM, Dan Naumov <dan.naumov@gmail.com> wrote:

> Oh my god... Why did noone tell me how much of an enormous performance
> boost vfs.zfs.prefetch_disable=0 (aka actually enabling prefetch) is.
> My local reads off the mirror pool jumped from 75mb/s to 96mb/s (ie.
> they are now nearly 25% faster than reading off an individual disk)
> and reads off a Samba share skyrocketed from 50mb/s to 90mb/s.
>
> By default, FreeBSD sets vfs.zfs.prefetch_disable to 1 on any i386
> systems and on any amd64 systems with less than 4GB of avaiable
> memory. My system is amd64 with 4gb ram, but integrated video eats
> some of that, so the autotuning disabled the prefetch. I had read up
> on it and a fair amount of people seemed to have performance issues
> caused by having prefetch enabled and get better results with it
> turned off, in my case however, it seems that enabling it gave a
> really solid boost to performance.
>

My home VBox server is similar specs and I enabled the prefetch from the
start.  A few days ago, I added an intel SSD as the zpool cache device and
the read speed is mind blowing now.  This is from inside a VM frunning on it
meaning ad0 is really a vdi. Once the cache is populated, HD latency is
mostly a thing of the past.

# diskinfo -tv /dev/ad0
/dev/ad0
        512             # sectorsize
        12884901888     # mediasize in bytes (12G)
        25165824        # mediasize in sectors
        24966           # Cylinders according to firmware.
        16              # Heads according to firmware.
        63              # Sectors according to firmware.
        VBf9752473-05343e4e     # Disk ident.

Seek times:
        Full stroke:      250 iter in   0.082321 sec =    0.329 msec
        Half stroke:      250 iter in   0.078944 sec =    0.316 msec
        Quarter stroke:   500 iter in   0.161266 sec =    0.323 msec
        Short forward:    400 iter in   0.128624 sec =    0.322 msec
        Short backward:   400 iter in   0.131770 sec =    0.329 msec
        Seq outer:       2048 iter in   0.667510 sec =    0.326 msec
        Seq inner:       2048 iter in   0.691691 sec =    0.338 msec
Transfer rates:
        outside:       102400 kbytes in   0.722864 sec =   141659 kbytes/sec
        middle:        102400 kbytes in   0.813619 sec =   125857 kbytes/sec
        inside:        102400 kbytes in   0.838129 sec =   122177 kbytes/sec



-- 
Adam Vande More



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?6201873e1003191932g447cb261rbc928324408b959b>