Rishi Chopra wrote:
I've had a tough time getting help for this question on the newsgroups and
freebsd.org discussion forums, so I thought I'd mail the list...

I'm setting up a 600GB Raid-5 array (4-200GB 8MB Buffer IDE disks connected
to an Adaptec 2400A controller) and would like some help picking a
stripe-size (this is the smallest unit of data written to each disk by the
raid controller.)  My usage pattern is fileserver and webserver+db, some
light desktop usage as well.  I'll be using defaults for the file system
(16K block size.)

Based on experience, can anyone suggest a good stripe-size choice?  Also, if
this controller performs best with a particular stripe-size under FreeBSD
(due to driver design, etc.) please say so; I can always tweak the newfs
command line switches to accomodate a particular stripe-size choice.

It depends on your priorities. If you are after sheer transfer speed a smaller stripe size is best because a single transaction is likely to be spread over multiple disks which then deliver the data in parallel.

On the other hand, if your priority is not the transfer speed of a single transaction but rather the ability to process multiple transactions in parallel without too much congestion a bigger stripe size is preferred. This is because in this case smaller transfers are likely to be limited to only one disk per transaction, at least statistically. So in a four disk system you have still three disks left to process up to three other, independent transactions in parallel. This way the server is more resilient in a multi-client/multi-transaction environment.

My recommendation for moderately to heavily used file servers with multiple clients is therefore to use a bigger stripe size. This also goes for web servers and DB servers as they are likely to cause multiple parallel disk transactions as well. I think 256 kB is the maximum for this controller, so you may want to pick that value. And there is no need to change the default block size of the file system in this scenario since this can lead to a performance degradation. The FreeBSD kernel is optimized for 16kB blocks.

Uwe Doering         |  EscapeBox - Managed On-Demand UNIX Servers
[EMAIL PROTECTED]  |  http://www.escapebox.net

[EMAIL PROTECTED] mailing list
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to