RAID 3 - 5
Well, finally, we got to the most interesting RAID levels: RAID 3 and RAID 5. They attracted our attention because no IDE RAID controller had supported them before. Besides, these RAID levels, just like RAID 10 and 01, allow combining high speed and reliability and at the same time do not require too many HDDs to be included into the RAID array. Just think, in case of RAID 10 and RAID 01 arrays we sacrifice half of our hard disk drives for the sake of higher reliability. As for the RAID 3 and RAID 5 arrays, they require only one single hard drive extra. It will serve to store the XOR sum for each block of all the HDDs included into the array. And no matter how many drives the array includes: reliability issue will not require anything other than a single HDD.
There is a very important difference between these two arrays. In RAID 3 the parity info is always saved on one and the same drive, while in RAID 5 it is distributed over a series of drives. This way RAID 5 should be faster in case of many smaller requests coming.
RAID 3 also implies that the data is flaking down to bytes or groups of bytes. However, since the smallest information bit a HDD can provide is a sector, it doesn't make much sense arranging blocks smaller than 512Bytes. But we didn't stop there. Only Promise controller out of the three controllers tested can handle RAID 3. However, it also allows changing the stripe block size within a really large interval. In order to study carefully the limitations imposed by a separate parity drive onto the entire RAID 3 array, we set the stripe block size equal to 64KB, i.e. we simply transformed RAID 3 into RAID 4. That's why for Promise controller we decided to assume that what we tested was not RAID 3 (64KB stripe block) but RAID 4 (64KB stripe block).
Anyway, Promise controller tests are still a little bit ahead. And now we are tackling 3ware piece, as usual.
3ware Escalade 6400
In the very beginning when we got our hands on this controller, it couldn't support RAID 5. However after we reflashed new firmware, which doesn't only update the BIOS but also changes some of the chips internal logic, RAID 5 support appeared. Now let's try to figure out if the controller, which has been the leader in all the previous tests, manages to implement RAID 5 accordingly.

| Graphs | Graph | Graph |
|---|
Note that the write speed is quite low. When testing the average read and write speed, HDTach works with 1MB data blocks. So, in order to write one 64KB block into RAID 5, the following action should be undertaken: 2 block reads from different hard drives (one block where we write the data and the other one where the XOR sum is saved), 2 XOR operations over 64KB blocks and two writes. The same thing should be repeated 16 times altogether…

| Graphs | Graph | Graph |
|---|
Hm, the results are far not high… what is pleasing here it's the linear read graphs and at least some kind of scalability of the controller.
Here come the results for Intel IOMeter.


Now let's compare the RAID 5 performance with that of RAID 0 for 2 HDDs.

Wow, it is not just good, it is simply excellent! Of course, a bit slower than RAID 0, but not too much. Note that RAID 5 for 4 HDD array working under really heavy workload manages to beat RAID 0 for 2 HDDs.

Larger blocks increase the load on the XOR-operations thus worsening the results a bit.

More writes move the graphs for RAID 5 slightly down, but do not affect their shape.

In case of 100% writing operations, RAID 5 gets three times worse than RAID 0 for 2 drives.

Writing large data blocks all the time makes the performance of RAID 5 array nearly dramatic. In this case it doesn't matter really how many HDDs are connected to the controller, because most of the precious time is spent on XOR-operations.
So, the controller, which has just learned to support RAID 5 appeared quite OK, we should say. Low results on writing can be explained by some RAID 5 general drawbacks rather than by problems with the controller. However, let's first check the other controllers in the same conditions.
Adaptec AAA-UDMA
Adaptec AAA-UDMA controller is equipped with a special RAID co-processor aka AIC-7815G, which will be dealing with XOR-operations. Now let's see how it is going to tell on the performance.

| Graphs | Graph | Graph |
|---|
The write speed appeared really somewhat higher than by 3ware Escalade 6400.

| Graphs | Graph | Graph |
|---|
Note that the results get worse as soon as the fourth HDD is connected.
The last test is Intel IOMeter.


Now let's compare RAID 5 with RAID 0 for 2 HDDs.

Well, no attempt to compete with RAID 0 has been undertaken so far. Moreover, the performance doesn't at all depend on the number of hard disk drives in the RAID 5 array.

The same picture as in the previous case. the higher gets the workload, the larger grows the gap between RAID 5 and RAID 0.

The more writes occur, the worse is the state of things for RAID 5.

Again, our worst predictions came true…

Just as by 3ware, Adaptec baby proved over three times slower in SequentialWrite pattern than RAID 0. Besides, Adaptec looks even a bit better sometimes…
Promise SuperTrak100
As we have warned you, we will be considering two types of RAID arrays for this controller, that's why get ready for more tables :-)

| Graphs | Graph | Graph | Graph | Graph |
|---|
Well, the write speed appeared quite acceptable. Moreover, it is even much higher than that shown by other controllers. And as for the read speed, it turned out very low…

| Graphs | Graph | Graph | Graph | Graph |
|---|
The results in this test are very similar to those obtained for RAID 4: the more HDDs you add to the array, the higher grows the write speed and the lower falls the read speed.

| Graphs | Graph | Graph | Graph | Graph |
|---|

| Graphs | Graph | Graph | Graph | Graph |
|---|


In order to better understand what is the practical difference between RAID 4 and RAID 5, we suggest comparing the Total I/Os for arrays made of 3 and 6 HDDs.

However, despite all the theory, RAID 4 appears the fastest in the FileServer pattern.

Here the situation is just the same.

A combination of a plenty of writes and high workload help RAID 5 to win the leadership.

We wonder why RAID 4 for 6 HDDs appeared so awfully slow here? If worst came to worst it was supposed to show at least the same result as RAID 4 for 3 hard disk drives (if the limiting factor was the parity drive).

As we see nothing depends on the type of RAID array.
As a general observation, we would like to mention that the performance of Promise SuperTrak100 doesn't seem to be depending a lot on the number of HDDs connected to it.
Controllers Comparison
Now let's compare the controllers' performance in Intel IOMeter:

All controllers except 3ware Escalade 6400 have some constructive limitations. They performance doesn't improve when the number of supported hard disk drives grows.

Just the same situation here. 3ware, however, can boast a slight performance improvement. All the rest can't boast anything here.

Now Promise controller expressed some intention to start running faster. :-)

These results are really interesting. Promise SuperTrak100 leaves all its rivals behind and shows the increase in performance in case of RAID 5 configuration. In RAID 4 array the performance on the contrary drops down and then stabilizes more or less. Maybe it was caused by the third PDC20265 chip being set into operation at that time.
It's a pity that we didn't have 3ware Escalade 6800 controller at hand. We wish we could continue this graph a bit more.

Well, again Promise proved the fastest. It seems to be a tendency already ;-)
Conclusion
All the controllers tested have proven very stable and capable of recognizing errors and devices failures. For all of them we tested the ability to quickly restore the failed array and we have to admit that there nothing we could complain about.
Certainly, the results were all very different. You can see it yourself if you look through the "Controllers Comparison" paragraphs. What we are going to say now is which controller we liked most of all. :-)
As you may have already guessed, we gave our preferences to 3ware Escalade 6400 controller. Simple architecture combined with a couple of original technologies, excellent performance and scalability.
Promise and Adaptec controllers have some architectural drawbacks, since both companies tried to use the already developed solutions rather than work on a totally new product from the very beginning. We wouldn't deny that they did manage to save some money and trouble, but it negatively told on the controllers performance. You can clearly see that slower central chip and memory on both of them perform as a tangible bottleneck. Their advantage over 3ware Escalade 6400, however, is the ability to support larger cache memory. In fact, we haven't dwelled on this potential advantage that much this time, that's why we wouldn't state that with a 100% certainty.
Also we would like to say that all the tests were run for the stripe blocks of only 64KB, and we suspect that in case of stripe blocks of a different size the situation could appear a it different as well. But you can't cover everything in one article, so maybe next time…
In conclusion we would like to point out that despite relative low results (compared with those shown by SCSI systems), all controllers cope with their task successfully: they create fault tolerant storage subsystems with large storage capacity and of relatively low cost. Now the market offers really good HDDs with perfect price-to-capacity ratio, which will suit ideally for a storage subsystem capable of competing with a SCSI one at least in terms of pricing. For instance, RAID 5 configuration built of three IBM DTLA 307075 HDDs, one IBM DTLA 307075 as a hot spare drive and an IDE RAID 5 controller will cost around $1600 altogether. A system of two Seagate Barracuda 180 HDDs and a controller will cost at least twice as much. Therefore, these controllers really offer us a great opportunity to save. Which can't remain unnoticed.
In fact, we are about to very soon see a new generation of IDE RAID controllers. Adaptec announced the launching of their new ATA RAID 2400A (for 4 HDDs, supporting RAID 0, 1, 01, 5), which will be equipped with a faster I/O chip - i960RS. Promise announced the upcoming external IDE RAID UltraTX4 and TX8 systems for 4 and 8 HDDs respectively equipped with a SCSI-to-ATA Bridge, by the way, which will allow connecting them to any Ultra2 LVD SCSI controller with an ordinary 68-pin LVD cable. We believe there will be also an internal version some day.
So, there seems to be the whole lot of cool info and interesting test coming, so stay tuned!



