0

I have a RAID5 array built from 4 1TB drives. I initially set the stripe size to 1M since I will be storing large files (much larger than 1MB). The NTFS cluster size is 64KB (largest possible). However, seeing the statistics made me reconsider my choice.

The software is relatively stupid and only has on 1 thread with QD=1, so for reads (this array will be mostly read) I will get an SSD and use that as cache. I won't be using that for writing, leaving only the internal cache of the controller (Adaptec 5805Z).

Still, I would like to get the best performance from this array.

So, the statistics (I can see them using Adaptec Storage Manager) say that for reading, 64KB, 128KB and 256KB are most common with 128KB taking first place (the software reads in 128K blocks). There were zero 512K or 1M reads. With writes, 256K is most common, 128K taking second place.

The question: Will changing the stripe size to 256K or 128K (or lower) speed up the array considering the statistics? Would that slow down the rebuild of the array?

1 Answer 1

3

From your own data it should already be rather obvious to chose the most used chunk size. From the data you presented I would go for 128K (assuming more reads than writes).

This will reduce the wasted time on reads & writes significantly. How this turns out on your real world performance however is another story and depends heavily on the the type of load. With very flat queues the difference will probably not be huge.

For reference: There is an answer (and comment) to a different RAID-related question here on superuser which gives some good basic understanding of how to choose stripe size: https://superuser.com/a/647385/321113

Also on serverfault: https://serverfault.com/a/517251

Both of these clearly state that if you know which size your application(s) mostly use (which seems the case with the given statistics) you should go for these.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .