raid stripe size vs performance

Bill Davidsen davidsen at tmr.com
Fri Aug 21 22:24:30 UTC 2009


Sharpe, Sam J wrote:
> 2009/8/20 Pasi Kärkkäinen <pasik at iki.fi>:
>> On Thu, Aug 20, 2009 at 01:43:27PM -0700, Phill wrote:
>>> I'm rebuilding a RHEL 5 server used primarily for building code.
>>> It has perc 6i controller and I'm installing 6 15K sas drives.
>>> The plan is to setup a raid 10 configuration for improved performance.
>>> Does anyone know if I can significantly increase or degrade my performance
>>> by selecting a larger stripe size? The default is 64k and I have read in a
>>> performance report that a 512k size may be more desirable for Linux systems.
>>> Thanks for any replies.
>> Well.. if you do large sequential reads/writes then big stripe size will
>> help, but if you do small random-io then large stripe size like that will be
>> really bad.
>>
>> It really depends on your workload.
> 
> I was about to say much the same thing in closing, but actually was
> going to point you to this article which has different advice to
> Pasi's (and different to how I would expect).
> 
> http://www.pcguide.com/ref/hdd/perf/raid/concepts/perfStripe-c.html
> 
> It actually says that a large stripe size might be better for random
> transactions on lots of small files (as I would expect from compiling
> code), because it means you can read a whole small file from each disk
> in the array - so in your case you'd be able to read 6 files at once
> (1 from each stripe (3) multiplied by 2 (for the mirrored copies)). If
> you had a small stripe size, you'd increase the chance that your small
> file would be split across multiple disks - so you might require more
> than one disk per file and you wouldn't get 6 concurrent accesses - in
> your case it might involve up to three drives.
> 
> A small number of requests for large files might benefit from small
> stripe sizes, because it would increase the chance that reading your
> large file involved reads from multiple disks - so you'd get higher
> throughput.
> 
Which is fine for read-only use, while it may hurt your write. Also note that 
many controllers use the term "raid-10" when they really mean "raid 1+0" which 
isn't the same at all as Linux software raid-10.

> As always, "large" and "small" file sizes are subjective terms and
> there is no substitute for benchmarking your own particular case - and
> this is a hotly contested subject among Storage gurus!
> 
Hell, people can't even agree on what the terms mean, in some cases.

-- 
Bill Davidsen <davidsen at tmr.com>
   "We have more to fear from the bungling of the incompetent than from
the machinations of the wicked."  - from Slashdot





More information about the fedora-list mailing list