We have recently reviewed Seagate Savvio 10K.1 — the first 2.5-inch 10K storage drive, designed for compact high-performance servers and data storage systems. Small dimensions and weight, high capacitivity, reduced power consumption and heat dissipation, quieter operation, higher efficiency per occupied room, and many other aspects make these storage drives almost an ideal solution for blade servers, servers, and data storage systems in 1U format, high-performance 2U solutions, and other applications, where the compact dimensions are critical. Three models with the most popular professional interfaces promote the application flexibility of Seagate Savvio — Ultra320 SCSI, Fibre Channel 2 Gb/s, and Serial Attached SCSI (SAS).
As we have already noted, the appearance of Savvio-series storage drives (and products of the same format from other manufacturers) allows to review cardinally the approach to building compact servers (1U, blade) and data storage devices, offering a new quality for such systems, impossible without Savvio. Savvio can also significantly improve scalability of more traditional middle-sized data storage systems, though the main application of Savvio is still small-sized systems.
At the same time, we should note indifference of the majority of users to Savvio, — incomplete industrial infrastructure for storage drives of this format used to hamper the introduction of these extraordinary products into mass usage. Sales statistics prove that as well — the main Savvio consumers are just five largest IT companies from the USA. For example, these drives are not quite at home in Russia so far (though the ice is broken and these drives can already be found on the shelves without any special problems).
By force of application specifics (mostly small servers and data storage systems) Savvio storage drives are intended for RAIDs (however, a single Savvio drive can be used in a blade server) rather than single usage (performance of a single Savvio has been reviewed in the previous article, we found out a lot of interesting things). So it will be reasonable for us to test this aspect. At first (that is in this article), we shall connect them in pairs and analyze their performance in RAID 0 and 1. Anticipating questions like "why not RAID 5?", I note that Savvio's operation in simplest double-drive arrays is of practical interest and is frequently used in real life — one of the key applications for Savvii being blade servers, where you can hardly install more than two drives (even if that small).
A sample blade server with two Seagate Savvio storage drives.
Double-drive Savvio arrays are also used in some inexpensive 1U servers as well as for some special applications (for example, mobile servers and data storage systems), where weight and dimensions are critical. It's not difficult to draw conclusions on performance and 4-drive RAID 10 (they are more preferable in some cases than RAID 5, which require special high-performance controllers) based on test results of RAID 0 and RAID 1. So it seems quite logical to start analyzing RAID 0 and 1 performance of Savvio drives. We'll try to get back to RAID 5 on these storage drives later, probably on a different testbed — using SAS storage drives and controllers. Which is quite logical in terms of market prospects for these drives.As we have analyzed Savvio 10K.1 characteristics in the previous article, we are going to proceed right to the tests.
Test participants and methods of testing performance
We used two Seagate Savvio 10K.1 ST973401LC 73.4 GB drives with initial firmware 0001 as well as two Seagate Cheetah 10K.7 drives of the same capacity. Performance of double-drive RAIDs 0 and 1 was compared between each other and the results of single storage drives. Besides, we used a single Seagate Cheetah 15K.4 147 GB with the spindle rotational speed of 15000 rpm, in order to determine how well simple RAIDs based on 10K models can compete with the fastest 15K storage drives. All Seagate storage drives were tested in Server Mode (PM=off).
We used the following testbed configuration to test storage drives:
This motherboard was chosen on purpose. Firstly, Intel E7210 chipset is intended for workstations and single-processor low end servers based on Pentium 4 and Xeon (which conforms well with the application area of single and doubled SCSI drives of this class), though it will do well for desktop systems (because it's based on the i875P). Secondly, this professional system contains a fully functional (with some reservations though) PCI-X bus (as well as PCI64), provided directly by the chipset (instead of additional bridges). Thirdly, this motherboard houses a good dual-channel Ultra320 SCSI RAID controller — Adaptec AIC-7902B, connected to PCI64 bus,
RAID controller Adaptec AIC-7902W based on PCI64 base on Gigabyte GA-8KNXP Ultra-64 motherboard.
which fits our purposes much better (testing hard drives proper and simple RAIDs) than a more expensive one with onboard memory, because Adaptec seems the most popular (at least in our country) brand of SCSI controllers. No additional memory in this controller allows to measure HDD performance in the "purest" form, unaffected by possible caching of the controller and its data stream processing algorithms.
All SCSI models were tested as single storage drives (and demonstrated similar results) as well as part of RAIDs 1 and 0 (in the latter case, the block size is 256 KB by default). That's how this RAID and the controller look like in Device Manager under Windows XP:
The controller (in non-RAID mode) uses Adaptec driver 126.96.36.199 dated September 2004, in case of RAID we used driver 188.8.131.52 dated July 2004. The tests were carried out under MS Windows XP Professional SP2. The hard disks were tested not partitioned (in Intel Iometer 2003.5.10, H2Benchw 3.6 and AIDA5 tests) as well as partitioned and formatted by regular operating system tools depending on a test type: one NTFS partition of maximum size for testing the average access time and plotting the read rate graph in WinBench 99 and two NTFS or FAT32 partitions of the same size for other tests (WinBench Disk WinMark 99 2.0, ATTO Disk Benchmark test, multithreaded read/write, and the Adobe Photoshop CS test). Each NTFS partition occupied half of the entire disk capacity (that is the second partition started exactly from the second half of the disk). FAT32 partitions were 32768MB, the first one starting at the outer edge of the media (on the "fastest" tracks), and the second — exactly from the middle of the media volume. NTFS and FAT32 cluster sizes were selected by default — 4 and 16 KB correspondingly.
The storage drives were mounted firmly on the metal chassis of the PC case and blown over by small face fans for a 5-inch bay. They were warmed up for 20 minutes before the test using a program with active random access.
Results of the physical parameter tests
Linear reading rate graphs are the first to go (click icons to see full-sized graphs).
There is nothing unexpected here — the RAID 1 graph is a perfect match to the single-drive graph, RAID 0 demonstrates twice as high performance and capacity. Double-drive RAIDs on Cheetah 10K.7 are much faster in transfer rates, but a simple RAID 0 on Savvio 10K.1 takes up less room and possesses much higher transfer rates than a single Cheetah 15K.4 (besides, its power consumption is much lower).
Ultra320 SCSI interface rate is practically the same in all cases (a small performance drop in RAID 0 is insignificant).
Using other approaches to measure bus transfer rates allows to squeeze maximum 210-240 MB/s, which is not quite bad.
What concerns the average access time for reading in double-drive RAIDs, while Cheetah 10K.7 shows no difference from a single storage drive, Savvio demonstrates a minor improvement in RAID 1 and especially in RAID 0 — its access time improved by 0.1-0.2 ms. But alas, these raids are still outclassed by the high-performance seek in Cheetah 15K.4.
Additional information is provided by the comparison of the average access time measured separately for reading and writing under Windows — we may try to evaluate the efficiency of lazy write procedures and caching of written data in the buffer by how much the average access time drops in writing compared to reading.
Both RAIDs 0 demonstrate a twofold reduction of the effective write access time compared to RAID 1 (it's quite easy to understand, considering random access and disk striping in Array Level 0). On the other hand, while RAID 1 on Cheetah 10K.7 offers the same access time for writing as the single storage drive (it's only natural), the write access time in Savvio array got noticeably worse!
It cannot be written off to test drawbacks, as the situation repeats itself in independent measurements in Intel IOMeter. However, I see no catastrophe in it, as the write access time in RAID 1 on Savvio remains on the level of RAID 1 on Cheetah 10K.7.
Another illustrative test of the "interior design" of the hard disks is the read/write speed on files of various sizes with various block sizes from 512 bytes to 1 MB. For this purpose I traditionally use ATTO Disk Benchmark. The screenshots below display the results for the four sizes of a test file — 128KB, 1MB, 4MB, and 32MB. While the first and the second file sizes are, as a rule, surely cached in the disk buffer (caching read/write data for a 1MB file is not that simple), there is simply no room to fit in the last file size. Caching the last but one file size depends not only on the buffer size, but also on the hard disk firmware.
ATTO Disk Benchmark 2.02 results.
According to the test results we can establish a fact that simple double-drive arrays (based on a controller without on-board memory) depend very much on firmware of the storage drives. The situation in all the three cases is very much alike. Nevertheless, Savvio RAID 1 demonstrates a little performance gain for reading small (up to 32 KB) blocks, manifold performance gain in writing the smallest blocks (up to 4 KB), but there appears some instability in the large block results. RAID 0 also inherits the evident improvement in handling small blocks relative to a single drive. It sometimes even outperforms RAID 1. But the situation with large blocks is not that peachy. For example, we are not satisfied with the efficiency of caching large blocks for reading in this array. And the stability of RAID 0 results for large files and blocks is questionable, though this array still demonstrates nearly twofold performance gain in this case.
Let's see how Savvio peculiarities, we discovered in simple arrays, impact the performance in various applications. To make it easier to analyze the results, hard drives go on the diagrams in the same order; the results of a single Savvio storage drive in Performance Mode are placed in the bottom position.
Performance in applications
At first, let's find out how well the hard disks are optimized for multithreaded operations. I traditionally use NBench 2.4 tests for this purpose, where 100MB files are written on the drive and read from it in multi-threaded mode.
This diagram lets us evaluate the efficiency of multi-threaded lazy write procedures of the hard disks in real (not synthetic, as on the diagram with the average access time) conditions when the operating system works with files. That's where surprises appear. They probably have to do with some differences in approaches to caching between Seagate Savvio and Seagate Cheetah 10K.7. For example, RAID 1 on Cheetahs demonstrates the same performance as a single storage drive, but Savvio RAID 1 gets faster — nearly by 9%. The same concerns RAID 0 — in case of Cheetahs it's faster than a single storage drive by 21.5%. In case of Savvio — by 24.3%! The highest performance gain is demonstrated in case of three simultaneous threads, while double-threaded operation may get a tad slower! Despite this fact and much faster transfer rates, both double-drive RAID 0 cannot compete with a single Seagate Cheetah 15K.4 in multithreaded writing.
Multithreaded reading is another pair of shoes. RAID 0 made up of two Cheetahs 10K.7 managed to outperform a single 15K model, though Savvio RAID 0 still failed to reach the desired level. And again Cheetah RAID 1 operates at the same performance level as a single drive, while Savvio RAID 1 generally gains 4% due to an obvious improvement in four-threaded operation. Cheetah RAID 0 gains about 43%, Savvio — 48%. Though Savvio arrays work noticeably (by one third) slower here than arrays on Cheetah 10K.7 (the difference is writing was much lower — below 7%).
Now let's have a look how the hard drives fair in old but still popular Disk WinMark 99 tests from the WinBench 99 package. We carry out these tests not only for the beginning but also for the middle part (in terms of capacity) of physical hard drives for two file systems. The diagrams display average results. Out of doubt, these are not "profile" tests for SCSI drives. Having published these results, we don't try to determine the fastest professional storage drive, but rather pay heed to the test itself and those readers, who are used to evaluate performance of a storage drive by WinBench99 tests. But we can note to console you that these tests will demonstrate to a certain degree the performance of these arrays in typical desktop tasks.
There is an interesting remark about the Business test. Both RAIDs 1 operate noticeably (by 15%!) faster than single storage drives. They nearly catch up with double-drive RAIDs 0, which are faster than single storage drives just by 16-20% and are heavily outperformed by a single 15K storage drive. At the same time, you can just set Savvio to Performance Mode and gain 25% performance in this test, it will even easily outperform RAID 0. Savvio arrays are only slightly outperformed by Cheetah 10K arrays.
Similar patterns, but less pronounced, can be seen in the High-End test. However, RAID 0 feels much better here and outperforms single storage drives by 18% (Cheetah) and 25% (Savvio), that is Savvio's optimization for RAID 0 (at least in this test), is batter than Cheetah's.
Newer complex track PCMakr04 and C'T H2BenchW tests for evaluating desktop performance only enlarge the abyss between a single 15K storage drive and RAIDs, based on 10K models. Only Performance Mode in Savvio can slightly improve the situation.
While RAIDs 1 are faster than single storage drives in PCMark04 (as well as in WinBench 99), the situation in H2Bench is quite contrary — unexpectedly slower. Performance gain in case of double-drive RAID 0 is about 20% for PCMark04 and only about 10% for H2Bench.
So, these arrays (and storage drives) are of little use for desktop applications, unless you intentionally set them to PM. That's another proof that operating algorithms (caching and request processing) are of primary importance to modern storage devices (and arrays), while the physical characteristics (transfer rates and seek time) play the secondary role.
The arrays somewhat improve Adobe Photoshop swapping performance, which is quite poor in a single Seagate Savvio. However, it still cannot catch up with its full-sized competitors.
Intel Iometer tests
Enough of wearing our storage drives out with the tasks, which are not quite typical of their profile. Let's proceed to tasks, to which these storage drives are actually intended. We use special patterns in Intel IOmeter to imitate hard disks operating in various enterprise-class applications. At first — traditional popular patterns, offered by Intel and Storagereview.com — imitation of various servers (DataBase, File Server, Web Server) and a Workstation.
We shall omit the results of Cheetah 15K.4 and Savvio in PM, not to overcrowd detailed graphs of performance versus request queue depth. The diagrams below show average results for all participants.
Here we can finally see the first fruit of successful server optimization in Seagate Savvio — double-drive arrays as well as single storage drives are faster than Cheetah 10K.7. The breakaway grows with the increase of QD.
An interesting picture can be seen in the file server pattern, where both double-drive arrays offer practically the same performance for both drive types! Savvio is again faster than Cheetah 10K.7.
But in the web server pattern, completely devoid of write commands (thus Savvio's advantage in write access time over the other drives does not affect the results), our storage drive under review is already slightly outperformed by its full-sized brother (including RAIDs; however, updating Savvio's firmware to Version 0002 may help, see the details in the previous part). But we are interested in the other aspect — RAID 1 is much faster here than double-drive RAID 0!!! So don't you trust those newbies and authors of in-a-nutshell articles, who write that RAIDs 1 (i.e. mirror) a priori offer the same performance as single storage drives. The diagram with averaged results of the three previous graphs (with single weight) proves them wrong.
Having averaged server loads, we learn that there is no difference between RAID 1 or double-drive RAID 0 for such tasks in terms of their performance. The array just must be (but the mirror is preferable for reliability reasons ;)) — HDD system performance grows approximately by 36-41%! Savvio 10K.1 turns out more useful in this case, as the average gain from using double-drive RAIDs is higher with this storage drive than with Cheetah 10K.7. Moreover, RAID with two Savvii easily outperforms even a single 15K storage drive. Besides, this array takes up less room and consumes less power. So, designers of high-performance data storage systems should sometimes pay their attention to fashionable tiny Savvio drives. I again recommend you to use Firmware 0002 and leave Performance Mode alone. :)
The situation with double-drive arrays in the workstation pattern is similar to the situation in the server pattern. All the four double-drive arrays tested, despite a number of principal differences, offer similar performance and work much faster than single drives.
At the same time, they fail to catch up with a single 15K storage drive here. Performance Mode is evidently beneficial to Savvio here.
Now let's proceed to simpler loads, such as random reading and writing of large and small files, which is also typical of these storage drives and arrays' profile.
Attention, Savvio RAID 1 is the best at reading large (about 1 MB) files at random addresses across the entire disk! That is we've got another proof that a mirror array may work even faster than a stripe (however, the latter leaves much to be desired versus a single storage drive with small queue depth, which is actually not surprising considering the striping and the access character). Savvio is again noticeably faster than Cheetah 10K.7 — including RAIDs.
Only a single Savvio drive QD=1-4 can compete with both double-drive RAIDs 0 in random writing of large files. In other respects, the stripe turns out faster than the mirror and the single storage drive (the mirror is sometimes outperformed by the single drive). And again Savvio slightly outperforms Cheetah, despite the significantly worse transfer rates.
However, RAID 1 again beats the other drives in random reading of small files, including double-drive RAID 0 (on both models)! Both array types turn out much faster than single drives. Savvio is faster than Cheetah.
But the situation changes as far as writing small files is concerned — RAID 0 rules supreme here, while the mirror and single drives offer similar performance, in compliance with the primitive theory. In this case, Savvio is again a tad faster than Cheetah.
In case of copying large files at random addresses across the entire disk (the random character is also more typical of server rather than desktop loads), the situation is similar to the previous test — RAID 0 is noticeably faster than RAID 1 and a single storage drive. Though RAID 1 still increases its performance at high QD, leaving the single drive behind.
This tendency gets more prominent in case of the small file copy pattern, though the mirror array is still way to go to the stripe performance.
According to the geometric mean of the six previous graphs, modern SCSI 10K drives from Seagate and their double-drive RAIDs offer similar performance in these operations (random reading, writing, and copying of large and small files), Savvio drives being at a small advantage (about 7%). On the average, RAID 1 turns out faster than a single hard disk by 12%, a double-drive RAID 0 — by 30%. And they are all far behind the performance of a single 15K storage drive. At the same time, Performance Mode can raise the average performance of a single Savvio to the level of a double-drive RAID 0. So, before you build a stripe, you'd better think a little for what tasks it will be used. Perhaps, you can do with a freeware utility to switch operating modes of a single storage drive.
The other patterns complete the performance picture of arrays with two Savvio 10K.1 storage drives.
Our model under review is a tad faster than Cheetah 10K.7 in defragmentation, being much slower than Cheetah 15K.4. PM is beneficial here. It's even faster than a double-drive stripe. The mirror array differs from a single drive only homeopathically.
Streaming read/write in large and small blocks repeats the defragmentation situation. But in this case RAID 0 is much more efficient and adds ~60% performance versus a single storage drive (by the way, Savvio again gains 10% more than Cheetah 10K.7 from using RAID!), and the mirror array is faster than a single storage drive only by about 4% (mostly with large QD at large blocks).
Summing up the performance test results of double-drive RAID 0 and 1, I want to tell you that SCSI Savvio 10K.1 storage drives demonstrate very decent and efficient performance. Their performance gain in RAIDs is even higher than in competing "full-sized" 10K 3.5" models from the same manufacturer (Cheetah 10K.7). A very strong aspect of Savvio RAIDs is their operation in typical server applications, where just a couple of Savvii (no matter whether RAID 0 or RAID 1) can outperform an excellent Seagate Cheetah 15K.4 (and just one 15K model — from Maxtor — refused to give in to a Savvio stripe here). It suggests an idea to build high-performance data storage systems based on Savvio — to replace the existing 15K models, as it will help save the room, power consumption, and probably the cost of a solution. It had better be done on SAS with dual channel interface redundancy.
At the same time, using Savvii in arrays pose some nuances — for example, they are very inefficient for a number of typical desktop tasks (adding a storage drive into a stripe brings just +10-15% performance gain to the array). It's sometimes much better to activate Performance Mode in a single storage drive.
You also shouldn't be afraid of the mirror. Contrary to the well-spread delusion, a simplest RAID 1 can sometimes noticeably increase system performance compared to a single storage drive, especially in case of heavy professional tasks, and cardinally improve reliability of the system at the same time. A cheap controller, like Adaptec HostRAID, without built-in flash memory, turns out quite enough to build a simple mirror and "feel the difference". By the way, RAID in Intel SATA bridges ICH5R, ICH6R, and ICH7R (and their server counterparts) was designed in cooperation with Adaptex Besides, south bridges with SAS support are round the corner. ;)
Alex Karabuto (firstname.lastname@example.org)
November 11, 2005.
Write a comment below. No registration needed!