Not so long ago we had a few reviews of new generation dual-channel IDE RAID controllers, namely Promise FastTRAK TX2000, HighPoint RocketRAID 133 and Silicon Image Sil680. And each of these reviews illustrated perfectly well how greatly the performance could drop if there appeared two drives in one array connected to the same cable. There are two ways of combating this problem (I am talking about the performance drop here).
First of all, you can avoid building big arrays :)
In fact, the most frequently used IDE RAID array configuration is an array of 2 hard disk drives united either in RAID 0 array to increase the data processing speed, or in RAID 1 array to ensure higher reliability. Far not everyone can afford to build a four-drive array, and those who had the opportunity usually preferred a SCSI configuration. However, you will never find a SCSI solution today, which will be able to successfully compete with RAID arrays of IDE drives in terms of cost that is why we have every right to state that there is an objective need in high-capacity IDE RAID arrays.
The second possible way of avoiding such a significant performance drop is pretty radical. If each drive of the array is connected to a separate IDE channel, the prime cause of the problem will be eliminated: there will be no hard disk drives connected to one and the same cable and hence no simultaneous data transfers via one cable. This way the solution is evident: get more IDE channels!
This is exactly the decision HighPoint engineers made when they designed their RocketRAID 404 (have you noticed that the controller name sounds very similar to the full-wheel cars: 4x4). So did Promise engineers with their FastTRAK100 TX4. Although both companies applied different approaches…
If you are looking for more details on each controller separately, you can see the corresponding reviews of ours:
Testbed and Methods
When arranging the arrays we set the stripe block size to 64KB. For WinBench tests the arrays were formatted in FAT32 and NTFS as one logical drive with the default cluster size. WinBench tests were run four times each; the average result was taken for further analysis. The HDDs didn't receive any extra cooling between the tests.
We used the following benchmarking software:
- WinBench 99 1.2
- Intel IOMeter 1999.10.20
To evaluate the controller performance in RAID arrays of different types in IOMeter, we used the new StorageReview patterns. They were introduced in the third edition of their HDD testing methodology:
These patterns are intended to measure the disk subsystem performance under workload typical of file- and web-servers.
Our colleague, Sergey Romanov aka GreY, developed a pattern for Intel IOMeter basing on the StorageReveiw's study of the disk subsystem workload in ordinary Windows applications. The pattern was based on the average IPEAK statistics StorageReview provided for Office, High-End and Bootup work modes:
The pattern serves to determine the attractiveness of the HDDs and RAID controllers for an ordinary Windows user.
We also compared the controller performance in RAID arrays of different types for varying write-to-read operations ratio. We made a pattern, where 100% random 8KB blocks were used and the write-to-read ratio was changing from 100/0 to 0/100 with the step of -10/+10.
Well, and in the end we checked the ability of the controllers to work with sequential write and read requests of variable size in different RAID arrays.
Our testbed was configured as follows:
- SuperMicro 370DLE mainboard;
- Intel Pentium III (Coppermine) 600MHz CPU;
- 2 x 128MB Registered PC133 ECC SDRAM by Micron;
- Quantum FB EL 10GB HDD;
- Matrox Millennium 4MB graphics card;
- Windows 2000 Pro SP2.
We created the arrays with Maxtor D740X-6L (6L020J1) hard disk drives.
The controllers were tested with the following BIOS and driver versions:
- Promise FastTRAK100 TX4: 2.00 b11 BIOS, 2.00 build 18 driver;
- Promise FastTRAK TX2000: 2.00.0.22 BIOS, 2.00 build 24 driver;
- HighPoint RocketRAID 404: 1.21 BIOS, 1.21 driver;
- HighPoint RocketRAID 133: 2.31 BIOS, 2.31 driver.
Just in case I decided to offer you both: tables and diagrams. So, feel free to check whatever is best for you:
In Business test the huge advantage rests with both HighPoint controllers: the dual- and the four-channel one show equally fast performance, which is most likely to be determined by the magic caching algorithms of HighPoint's drivers.
Promise controllers proved somewhat slower, but here the four-channel solution outperformed the dual-channel one.
In High-End test the gap between HighPoint and Promise controllers got noticeably smaller, though HighPoint still managed to retain the leadership. Note that the performance difference between the dual- and four-channel HighPoint solutions is smaller than that between the similar solutions from Promise. It must be again the software caching algorithms that dump the influence of the controller architecture on its speed. However, in RAID01array RocketRAID 133 and RocketRAID 404 no longer run neck and neck.
The shift to another file system didn't lead to any drastic changes in the positioning of the testing participants. HighPoint controllers are again ahead. And among the tested solutions from Promise, FastTRAK100 TX4 is faster.
Intel IOMeter: DataBase
Well, now let's play some games with the occasional regularity :)
So, here the processing of random 8KB requests with the varying reads-to-writes share resulted in the following picture (for a more illustrative comparison we took the results obtained in case of queue=16). Imaging that there is only one HDD used with the controllers tested (though it is stupid, of course, but do me a favour, imagine that):
As you can see, all controllers performed equally fast up to the point where the share of write operations reached 50%. However, the bigger grew the writes share after that, the more ahead appeared RocketRAID 133 and FastTRAK TX2000 (both are dual-channel ones!). As soon as the writes share got equal to 90%, the dual-channel controllers managed to reach their maximum advantage over the four-channel fellows, and a moment later this impressive victory disappeared. I wonder what the dual-channel controllers need such aggressive drivers for? :)
In a RAID0 array of two HDDs, four-channel controllers look a bit better (especially the Promise FastTRAK100 TX4) in those modes where the writes share is pretty small. And at 90% of writes dual-channel controllers again rush ahead.
RAID0 array of three hard disk drives appeared out first "litmus paper". Please take a look at the performance difference between the four- and dual-channel solutions: what a huge gap! And both parties have contributed to creating this gap. The four-channel controllers naturally speeded up (compare the results here with those on the previous graph), while the dual-channel ones slowed down a lot. What happened? Well, the dual-channel controllers got a pair of hard disk drives connected to the same cable. So, this particular pair turned out the slowing factor.
However, nevertheless dual-channel controllers again prove very active in case of large writes share.
In case of RAID0 array of 4 HDDs all controllers get faster, but in case of four-channel solutions adding the fourth hard drive appears more efficient. Besides, I was quite confused with the behavior of HighPoint controller cards once the share of writes grew pretty big. RocketRAID 404, which used to be quite peaceful suddenly produced a weird hump in the end of the graph, while RocketRAID 133 for some reason decided to climb up the Everest in RandomWrite mode…
In RAID1 array all testing participants performed more or less acceptably, although dual-channel controllers tried to undertake something when the writes share grew quite big. Though they changed their mind real quick :)
Please, take a look at the graph for Promise FastTRAK100 TX4: this is how the real RAID01 heroes should work! And what about the second four-channel baby? Well, our second "four-arm" soldier, HighPoint RocketRAID404 tried to struggle with Promise TX2000 at first, but gave in very soon :(
HighPoint RocketRAID133 in RAID01 mode simply hates reading, but it just loves to write… Is it a second Pushkin? :)
Note that even in this mode, which is quite a hard nut for dual-channel solutions, both dual-channel racers, FastTRAK1 TX2000 and RocketRAID133, outperform their four-channel brothers in modes with big writes share.
However, in real applications the read requests are more frequent than writes when they are streaming down on the disk subsystem. So, I suggest that you should not pay too much attention to the "St. Vitus's dance" in the right part of the graphs, no matter how great the controller performed there.
Intel IOMeter: Sequential Read & Write
We decided to take only the most interesting results shown by our testing participants in SequentialRead and SequentialWrite patterns. The table below includes only the maximal values for the data stream, which we managed to read from the array (write onto the array) by each controller tested. The blue color indicates the best result of the four controllers, and the red color - the worst one.
As we can see, HighPoint RocketRAID404 manages to process streaming data faster than anyone else. The second position here belongs to Promise TX2000, and the last position (the one featuring most red cells) is occupied by Promise FastTRAK100 TX4. As I have already pointed out in Promise FastTRAK100 TX4 Review, this controller boasts very complex architecture…
Intel IOMeter: WorkStation
Although the table for WorkStation pattern is very big, it is nevertheless very easy to read. Especially if you do not take the actual numbers into account but regard only the cells coloring.
As we see, FastTRAK100 TX4 controller from Promise won in 4 modes out of 6 (RAID0 or two and three HDDs, RAID 1 and RAID 01). In the remaining two modes the laurels were won by HighPoint RocketRAID404. Here we have every right to state the advantage of the four-channel controllers over their dual-channel counterparts. On the graphs below I showed those modes where this advantage can be seen with a naked eye, or… where it is almost negligible.
Intel IOMeter: FileServer and WebServer
The results for these two patterns are arranged in the same way as those for WorkStation. Everything is very illustrative:
In RAID0 arrays of 3 and 4 HDDs promise and HighPoint controllers performed almost equally fast. And in RAID1 array we can already single out a leader: Promise FastTRAK100 TX4. All other testing participants showed pretty much the same performance in this mode. Bearing in mind that in case of dual-channel controllers the HDDs were added to RAID 1 array from different channels, there appears no big difference between the dual-channel solutions and the four-channel HighPoint RocketRAID404. As for Promise FastTRAK100 TX4, the situation is a bit different: I created RAID1 array of hard disk drives connected to different chips and not to different channels of the same chip, which seems to have had some really positive influence on the FastTRAK100 TX4 performance.
In RAID01 mode everything is even more exciting. The advantage of FastTRAK100 TX4 is simply immense: it is more than 1.5 times faster than the second fastest solution. Although in this case it would have been more correct to say "…than the second two fastest solutions", since HighPoint RocketRAID404 and Promise FastTRAK TX2000 appeared almost equally fast, even despite the architectural differences. HighPoint RocketRAID133 controller performed not really remarkable in this test.
In case of RAID0 arrays of 3 and 4 hard disk drives, the four-channel solutions defeat their dual-channel counterparts completely. Among themselves Promise FastTRAK100 TX4 and HighPoint RocketRAID404 are almost equal in performance (the latter is just a little bit faster under heavy workloads).
In RAID1 the main competitor to Promise FastTRAK100 TX4 appears… HighPoint RocketRAID133!
In RAID01 array the leadership belongs to Promise FastTRAK100 Tx4, of course. However, the four-channel RocketRAID404 still managed to outpace the dual-channel solution from Promise. The slowest here again turned HighPoint RocketRAID133. It looks as if RAID01 were totally not its field…
Well, the main conclusion to be made here sounds as follows: four-channel IDE RAID controller cards are not very expensive but pretty useless toys. They boast some real advantages in a certain number of tasks, such as work with RAID0 array of 3 or 4 hard disk drives, where they are over 50% faster than their dual-channel brothers.
And before making the final verdict about the best solution of those tested, let us list all highs and lows of the two rivals:
- Capable of working with 8 HDDs (a pretty inexpensive way of creating a very big drive array);
- High speed in RAID0;
- High speed of streaming data processing;
- Very user-friendly array management utility for Windows;
- Reasonable price.
- Low performance in RAID01.
Promise FastTRAK100 TX4
- High speed in all types of RAID arrays;
- The fastest performance in RAID01 among all firmware RAID controllers tested in our lab;
- Pro-version available (with 2 SuperSwap racks);
- Supports PCI 32/64MHz bus.
- Not very user-friendly interface of the array status monitoring utility;
- No utilities for array creation/editing for Windows;
- Slow processing of streaming data.
Summing up all the highs and lows listed above I dare conclude that HighPoint solution would be more suitable for home-office use (work with video, archives, speeding up the overall disk subsystem), while Promise controller appears the right choice for IDE RAID servers due to excellent performance in RAID1 and RAID01. Of course, it will also suit for a home system :)