Performance in Intel IOMeter
We’ll start out as usual by testing the controller under mixed request streams.
In this test we will be sending a mixed stream of requests to read and write random-address 8KB data blocks. By changing the ratio of reads to writes we can see how efficiently the requests are sorted out by the controller’s driver.
The results of this test are shown below:
Let’s view them as graphs. The dependence of the data-transfer speed on the percentage of writes is shown for request queue depths of 1, 16 and 256. For better readability we divide the arrays into two groups:
The arrays all have very close speeds in the Random Read mode. A disk can perform deferred writing more effectively when there are more write requests in the queue, so the speed of the single drive grows up. The speed of RAID0 depends on the number of disks per array, but it is only in modes with a large share of writes that the RAID0 speed is exactly proportional to the number of disks in the array.
The mirrored RAID1 and the RAID5 and 6 arrays have very close speeds in every mode. The RAID10 looks preferable to them, but only due to its RAID0 constituent, we guess. This load must be not big enough for the algorithms implemented in those arrays to give any performance gain, but some time is already spent to process them.
Under higher load we can see that the speed of RAID0 is proportional to the number of disks per array even in the 100% reads mode. But contrary to the single drive, the speed of RAID0 doesn’t grow up much as the percentage of write requests becomes bigger. Note also the different algorithms the JBOD and RAID0 arrays use with regards to write requests.
The speeds of all the arrays from this group fall as the writes percentage grows. With the mirrored RAID1 and RAID10 arrays it is due to their increased read speed thanks to the intelligent selection of the optimal (considering the current position of the read/write heads) disk from a mirrored couple. The RAID5 and RAID6 are quite fast at reading, but slow down on write requests because they have to spend time to create checksums when processing them. What’s strange, the RAID6 is a little faster than the RAID5 through all the modes!
It’s simpler with the mirrored arrays. If you compare the RAID1 and the RAID10 with the single drive and the two-disk RAID0, respectively, you can learn that the mirrored arrays are faster in modes with high probability of a read request and slower in modes with high probability of a write request. So, we can claim that the intelligent algorithm for reading from mirrored arrays implemented in the Tekram ARC1220 works well under such loads.
Under an even greater load, the RAID0 arrays slow down as the percentage of writes grows up. Their speeds are still proportional to the number of disks per array, though.
The arrays from this group behave almost in the same manner as under the lower load.