I was planning to setup RAID0 configuration for my lab machine and I was not sure which stipe size to go for especially in the world of SATA3 SSDs. But again, for a lab computer to install SSD will be overkill. I had all the questions in mind like What is the importance of selecting right stripe size, What is the correct stripe size, What should I set stripe size to, what should be the stripe size for raid0 configuration, Will there be a performance impact related to stripe size, What is the best stripe size for striping or what will be the best stripe size for raid0?
So I went an extra step and tried all the stripe sizes available to me and checked the transfer speeds (this is not the OS drive but a Data drive, the performance of the same configuration is little bit lower if used as the system drive – but is still better than single drive). Not only the right RAID stipe size but also the NTFS allocation unit size (shown below) also has effect on the volume transfer speed.
Let me give an overview on these two things. For those of you who don’t know, setting up 2 or more hard drives in Raid 0, striping as it is called, is a bit of a risk since every thing which you save on the volume gets written on all the drives in parts. So, if one of the drives goes bad, all the data is lost. I would always use it for my lab machine as the data is not very important and critical and I do take daily backups.
What came out as a result was a sweet combination of the RAID0 stripe size and the NTFS allocation unit size (which we always leave at the default setting i.e. 4KB). Here is a list of hardware/software I used:
2 x 1TB SATA2 internal hard drives
Intel 41 chipset with ICH10R raid
Intel Quad core Q8300
Windows 7 x64 Ultimate
Intel rapid storage driver 184.108.40.2063
CrystalDiskMark 3.0.2 x64 (http://crystalmark.info/?lang=en) – for checking the transfer speeds
The drives are formatted and there is a single partition utilizing the whole space available.
I manually created the raid with different attributes for each test and collated the results in an excel file. Sharing it will be great idea as it might save someone trouble of doing the same thing for themselves. Here is the result:
*All the data is in MBps
The value written as 4K-16K means 4K Raid stripe size and 16K NTFS allocation unit size. As you can see, for me the best combination for read and write speeds can be achieved by setting the Raid stripe size as 16K and NTFS unit as 8K, you want a different combination depending upon your needs. At the same time I would like to point out that your might get different outcome for a similar setup as it depends upon many other factors. This is just a basic idea to get started and I don’t have much experience in running benchmarks. I hope this will be helpful for someone. Please drop in your comments.