[Samba] Samba performance

Stan Hoeppner stan at hardwarefreak.com
Thu Jun 2 22:01:50 MDT 2011

On 6/2/2011 2:24 PM, Juan Pablo wrote:
> Hi Stan,
> Thanks for your feedback and suggestions!

You're welcome.  Let's hope they're beneficial.

> The disk subsystem is composed by:
> - 8 WD2002FAEX SATA 2TB hard drives (7200 RPM, 64MB cache, 4.2 ms avg latency)
> - 1 Intel RAID controller RS2BL080 with 512 MB configured with 1 virtual  drive 
> 12.7 TB (hardware RAID 5 with 1 MB stripe size, caches enabled,  read-ahead 
> enabled)
> In your experience, should I expect higher performance from this hardware?

That depends on your target workload(s).  You're currently achieving
single stream read performance of 780 MB/s, over 110MB/s per drive.
That's a really good streaming read, close to peak drive read performance.

The problem I see is when you have 4 readers (Win7 clients) reading
4,000 files each.  If these are 16,000 unique files, not each Win7
machine reading the same 4,000 files, i.e. no cache benefit, then I
don't think your disk heads are going be able to seek fast enough to
service all the read requests and hit wire speed SMB.  If your
production load will be significantly less than this artificial test
load, you may be fine.

> Will try the ramdisk test you are suggesting and post back the results. Thanks 
> for the suggestion!

The results should be informative, one way or the other.

> I have jumbo frames enabled in the switches but windows drivers for the Intel 
> network cards don't have the option to enable jumbo frames. I also tried raising 
> the MTU in the linux server but performance was even worse (I thought this was 
> related to the windows NIC driver not supporting MTUs larger than 1500).

Lack of jumbo frames is probably hurting your wire performance due to
increased interrupt processing and other factors.  I'm surprised some
Intel NICs don't support jumbo frames.  Must be desktop adapters.  Can
you post the model# of the NICs in the Win7 PCs and those in the server
so I can do some research?

> I also modified windows registry to manually enable smb2 protocol because it was 
> not negotiating smb2. Do you think of any other optimization that can be done on 
> the windows terminals?

I have no experience yet with SMB2 or Win7 so I can't really say.  You
should be able to tune that server and the clients to hit near wire
speed with regular SMB.  I suggest solving that problem first, then
worry about SMB2.


More information about the samba mailing list