Now let’s check the controllers out at random-address writing.
We’ve got pure writing here. And it looks like controllers that keep more cache lines simultaneously are on the winning side. The Adaptec is first, proving once again that its writing is good. The LSI and Promise are slow here.
Interestingly, the 2GB Areca is inferior to its 512MB version. Perhaps it is harder to seek data in the larger cache.
Well, we’ve got an indisputable leader at writing indeed. As for the losers, the low performance of the Promise is due to its lack of deferred writing. The performance hit of the LSI with RAID10 is inexplicable.
The controllers behave similarly with RAID5 and RAID6. The Adaptec is in the lead when processing small data blocks. It is followed by the 3ware which is faster on 512-byte blocks than on 2KB ones. This must be the performance peak of this controller’s very specific architecture. It is the HighPoint and Promise that have the biggest problems, though. The HighPoint cannot cope with writing small data blocks. It has a performance hit when the data blocks are smaller than 32KB. It has the same processor as the Adaptec, so it’s not the processor’s fault. The Promise is even worse here. Having no deferred writing, it gets stifled by the stream of small requests.
The controllers are very different when writing large data blocks. First of all, the Adaptec has problems. While being excellent at handling small random-address chunks of data, it is poor at writing large chunks. It seems to have some speed limiter fixed at 120MBps. The similar-specced Areca goes ahead. The 2GB version of the Areca is considerably slower, though, and seems to have a speed limitation, too.
And finally, the LSI and Promise have an unexpected reduction of speed on 512KB data blocks. The Promise then tries to catch up with the leaders on larger data chunks whereas the LSI makes no such attempt. We do not know why these controllers have problems writing full stripes (512KB is eight disks multiplied by 64KB).
None of the controllers has such serious problems when writing to RAID10 except that the Promise has a small performance reduction in the same area. The Areca is in the lead in both its versions.
The results vary wildly when the controllers are working with checksum-based arrays. The Adaptec and 2GB Areca hit some inexplicable performance limits again. The LSI also encounters such a barrier with RAID6. The Promise is much slower than the best controllers which keep close to each other. Writing large data blocks allows the Promise to work with full stripes, which helps to make up for its lack of deferred writing (to remind you, when a full stripe is being written, the checksum is calculated only once for the whole stripe, which cuts the overhead greatly). It cannot catch up with the faster controllers, though.