RAID 10 Array (Issues, Optimizations)

weyemar

Honorable
Mar 28, 2013
2
0
10,510
So, I have researched this to the point my mind has gone numb. There seems to be something missing as to making this work. And I have gotten conflicting information. I am very grateful to anyone who can help.

I recently acquired four 3TB drives. From what I have read, a RAID 10 array would suit my needs nicely. Going through different options, I have gotten disappointing results. (I'm mostly storing large files, I have a few VMs and sometimes record BF3 game play to disk)

Specs:
ASRock Z77 Extreme4
Intel i5 3570k
16GB RAM
OCZ Agility 3 360GB (x1)
Seagate Barracuda 7200.14 (x4)
AMD Radeon HD 7950
Blu-ray Burner

So, this array is in RAID 10, 64K stripe size, formatted with 64K allocation unit size and I have the cache settings set for optimal speed (the PC is on a UPS).

These drives are on the 3Gb/s ports off of the Z77 chipset. The SSD is off of one of the 6Gb/s ports of the Z77 chipset. Nothing is running off of the Asmedia controller.

OK, let's go through some screen shots of how things are configured.

Intel Rapid Storage Technology
Intel Rapid Storage Technology 1
Intel Rapid Storage Technology 2

Disk Management - (those other drives are in an external USB 3.0 enclosure)
Disk Management

Benchmarks on Each Drive
One
Two
Three
Four This one has slower reads for some reason..

RAID 0
Here is a benchmark of 2 drives in RAID 0 (with 64K stripe size and allocation unit size)
RAID 0 Benchmark

RAID 10
Finally, this is a benchmark of the RAID 10 array
RAID 10 Benchmark
 

pauls3743

Distinguished
Hokay, I think your stripe size is too small.

If you have nothing important on your raid 10 array then clear it and remove the array.

What you're going to do next is build and destroy an number of raid 10 arrays with different stripe sizes to determine which is quickest.
Build the raid 10 array, make it relatively small 80-100GB, increment your stripe size from the previous setting, set it to clear the array (building/verifying takes longer).
Benchmark your raid 10 array a number of times to ensure consistent results, 3 times should be your minimum.
I would also have a large file, or set of large files, sitting on your SSD to copy to/from the raid array to prove transfer speed, 30-50GB of large files should be a good measure to ensure the memory isn't buffering it.
Remove the raid 10 array.
Rinse, wash, repeat.

When all that's done, build your array with whatever stripe size gave you your best results.

A couple of notes:-
1). You're using fake raid which isn't much better than software raid as it all has to go through the processor so you may not get better results than you already have.
2). You're channelling 4 hard drives through the hard drive controller, there's a limit to what it can take so this is probably throttling you as well.
3). I have a couple of raid 5 arrays, one with 500GB hard drives and another with 3TB hard drives. I found the default stripe size too small and gained much better speed by increasing the stripe size to 256kb in one and 512kb in the other. Some have suggested going the whole hog up to 1024kb.