SATA Hard Drives on J-Micron and Intel controllers
SATA II controllersWe were not completely satisfied with our hard drive round up. That's mainly due to the compatibility issues we encountered during the testing for that article. Is the problem we encountered due to a bad chipset, a bad drive or a bad implementation? This simply won't do, so we asked around and search the Internet for answers. It would seem that we are not the only one having problems with ICH8R and more specifically with the Gigabyte P965-DS3P. Users in forums everywhere have some issue or another with RAID or SATA single drive performance on the P965-DS3P and its earlier sibling as well, the P965-DS3.
Gigabyte P965-DS3P ICH8R problems
After asking Gigabyte's representative and searching the web for answers, it would seem the Gigabyte have actually provided a solution to this problem. It would seem the problem is related to the Marvell LAN controller used by Gigabyte. So, this 'bug' is not only specific to DS3 or DS3P alone. The solution is pretty simple - update the Marvell's EEPROM chip. The necessary files are available on Gigabyte's website, here. This is the link to the P965-DS3O FAQ page, if you're using a different motherboard, please check your respective motherboard's FAQ page.Because updating the EEPROM must be done in a pure DOS environment, you might want to have a DOS bootdisk handy. Several websites on the net can provide you with the necessary bootdisk if you do not have one. The update is simple - Gigabyte have provided a batch file 'EEP.bat' in the update, just run the batch file and the EEPROM flash should be done in a matter of seconds. Of course, you need to restart the PC to see any changes. After a restart, a HD Tach Sequential Write test run confirmed the Western Digital Caviar 1600AJS is working normally with ICH8R controller.
ICH8R
The onboard ICH8R SATA / RAID controller is generally regarded as one of the best onboard storage controller in the market. This is in no small part due to Intel's long experience in designing chipsets. The ICH8R does not only fully support SATA II peripherals and Native Command Queueing (NCQ), but also offer some performance enhancing features as well. One is the support for Hard Drive Write Cache and the second is Volume Write Back Cache. These two features are only supported with RAID arrays. The help file for Intel's Matrix Storage console mentioned that Volume Write Back Cache is only supported for RAID 5 arrays, but actually you can enable it even with RAID 0 arrays.
So, today in addition to seeing what the 160 GB Hitachi Deskstar and Western Digital Caviar have to offer in single and RAID 0 configurations have to offer with Intel ICH8R controller, we will be also seeing what Volume Write Back Cache can offer for RAID 0 users. Of course, we will compare the results to what we got with the J-Micron controller from our previous article.
Preliminary Tests
As usual, before examing the performance of these drives and the controllers used, we ran some preliminary tests using HD Tach 3.0.1.0 and IOMeter 2004.07.30. These synthetic benchmarks results are best-case results - meaning you'll likely won't see the same kind of results in real world situations. However, they do serve their purpose well - providing us with some idea of what kind of performance these drives have to offer.HD Tach
Below, you'll see HD Tach test results - these are graphs for sequential transfer rates. To simplify things a bit, we've decided to separate read and write results. If you want to see the full graph, just click on the images - that would bring up a 1024 x 768 JPG version.(click the picture for a clearer graph)
| J-Micron | Intel | |||
| Deskstar 160 GB | Caviar 160 GB | Deskstar 160 GB | Caviar 160 GB | |
| Random Access (ms) | 13.1 | 13.1 | 13.3 | 13.2 |
| CPU Utilization (%) | 1 | 1 | 4 | 1 |
| Average Read (MB/s) | 65.7 | 65.7 | 64.4 | 66.6 |
| Average Write (MB/s) | 66.3 | 67.0 | 64.7 | 67 |
Some variations are expected, but overall we think both the J-Micron and Intel ICH8R controller is on a par with each other. The Hitachi Deskstar 160 GB has slightly lower average read and write with the Intel's ICH8R - CPU utilization is much higher (4 percent compared to 1 percent on the J-Micron controller). The Caviar works just as good on the Intel ICH8R as on the J-Micron controller, average read is slightly higher but nothing to write home about.
Of course, that's with the drive running as single drive. The true and more interesting test are when the drives are configured into RAID arrays. Let's see how they fare. The ICH8R results are taken with the setting Volume Write Back cache set to 'Disabled'.
(click the picture for a clearer graph)
| J-Micron | Intel | |||
| Deskstar 160 GB - Array | Caviar 160 GB - Array | Deskstar 160 GB - Array | Caviar 160 GB - Array | |
| Random Access (ms) | 13.5 | 13.5 | 13.5 | 13.2 |
| CPU Utilization (%) | 4 | 5 | 3 | 4 |
| Average Read (MB/s) | 112.0 | 111.8 | 111.7 | 110.7 |
| Average Write (MB/s) | 88.0 | 86.5 | 103.5 | 97.5 |
With Volume Write Back cache disabled, the ICH8R controller results differ little from the J-Micron's. Transfer rate fluctuate wildly, at least until we hit areas above 180 GB. Looking at the table, we can see the Intel ICH8R is slightly more efficient in terms of CPU utilization (by 1 percent). The more noticeable difference is average write - the ICH8R controller allowed the Hitachi Deskstar to edge out the Western Digital Caviar. Just in case you're wondering, that's about 10 - 11 percent improvement.
Next, we enable Volume Write Back Cache on the ICH8R. then ran the same test again.
(click the picture for a clearer graph)
| J-Micron | Intel (Volume Write Back Cache Enabled) | |||
| Deskstar 160 GB - Array | Caviar 160 GB - Array | Deskstar 160 GB - Array | Caviar 160 GB - Array | |
| Random Access (ms) | 13.5 | 13.5 | 13.3 | 13.1 |
| CPU Utilization (%) | 4 | 5 | 5 | 6 |
| Average Read (MB/s) | 112.0 | 111.8 | 125 | 128.5 |
| Average Write (MB/s) | 88.0 | 86.5 | 64.7 | 60.6 |
The fluctuations are less frequent when Volume Write Back Cache is enabled on the ICH8R. Like the number on the table suggest, the Caviar has upper hand here, offering higher average reads on the first parts of the benchmark. But further down, the two arrays behave similarly - except for that one drastic drop on the Caviar. If you look at average write results, the Deskstar has a slight edge over the Caviar. The reason becomes clear when we look at the graph - the Caivar array dropped to below 40 MB/s at some points. As far as writes are concern, its the Hitachi Deskstars that seems to be stronger. Look closely and you'll see the Deskstar array can mostly maintain writes above 40 MB/s (only dipping three times on the last parts of the benchmark) while the Caviars repeatedly drop below 40 MB/s - about 9 times pretty evenly through the latter half of the benchmark..
Taken from the HTML help file from the Intel's Matrix Storage Console:
"Multiple I/O requests from the host are grouped into fewer requests and written from the cache to the volumes at defined intervals. The Write Back Cache can be enabled or disabled at any time without the need to reboot the system."
Now, if you compare the results to the previous ones, you'll see one glaring trend - according to HD Tach, average write results on both arrays are lower with Volume Write Back Cache enabled. We saw a drop from 103 MB/s to 64.7 MB/s on the Deskstar array and from 97.5 MB/s to 60.6 MB/s on the Caviar's. We did get a boost in average read though.This is interesting, after all, enabling Volume Write Back Cache is supposed to boost performance, not lower it.
IOMeter
Now it's time to look at IOMeter results. In the first table, you can see sequential results taken with single drive and RAID 0 array configurations with both the J-Micron and Intel ICH8R controller. Strangely enough, IOMeter recorded '0' maximum access time with Intel ICH8R, so maybe we should disregard that measurement for this article.| Sequential | J-Micron |
Intel | ||
| Deskstar 160 GB single | Caviar 160 GB single | Deskstar 160 GB single | Caviar 160 GB single | |
| ReadOps | 2390.79 | 2438.04 | 2374.32 | 2372.61 |
| ReadMBs | 74.71 | 76.19 | 74.2 | 73.81 |
| Average Access Time | 0.42 | 0.41 | 0.42 | 0.42 |
| Maximum Access Time | 11.53 | 9.98 | 0 | 0 |
| CPU Utilization | 2.87 | 2.77 | 3.19 | 3 |
| WriteOps | 2380.76 | 2433.4 | 2240.78 | 2437.63 |
| WriteMBs | 74.4 | 76.04 | 70.02 | 76.18 |
| Average Access Time | 0.42 | 0.41 | 0.45 | 0.41 |
| Maximum Access Time | 18.43 | 14.01 | 0 | 0 |
| CPU Utilization | 3.31 | 2.81 | 2.72 | 3.18 |
| J-Micron | Intel | |||
| Deskstar 160 GB array | Caviar 160 GB array | Deskstar 160 GB array | Caviar 160 GB array | |
| ReadOps | 2989.39 | 3351.38 | 2889.73 | 3306.42 |
| ReadMBs | 93.42 | 104.73 | 90.31 | 103.26 |
| Average Access Time | 0.33 | 0.3 | 0.37 | 0.33 |
| Maximum Access Time | 16.05 | 10.45 | 0 | 0 |
| CPU Utilization | 6.96 | 6.22 | 7.87 | 8.7 |
| WriteOps | 2698.06 | 2698.24 | 2865.97 | 2955.46 |
| WriteMBs | 84.32 | 84.32 | 89.56 | 92.37 |
| Average Access Time | 0.37 | 0.37 | 0.37 | 0.36 |
| Maximum Access Time | 1.7 | 16.24 | 0 | 0 |
| CPU Utilization | 4.24 | 4.31 | 7.96 | 8.51 |
These are averages from three runs - according to these results, there's very little separating the 160 GB Hitachi Deskstars and Western Digital Caviars in single drive configuration when average read and write is concerned. We're even seeing the same trend in lower average write performance with HD Tach on the Hitachi Deskstar with Intel's ICH8R. Moving on to RAID 0 configurations, we see the opposite of what we saw in HD Tach - the Caviar's average write is actually better than the Deskstars - on both controllers. As for CPU utilization, according to this, the Intel ICH8R has slightly higher utilization - particularly with writes.
| Random | J-Micron | Intel | ||
| Deskstar 160 GB single | Caviar 160 GB single | Deskstar 160 GB single | Caviar 160 GB single | |
| ReadOps | 71.61 | 71.82 | 72.66 | 72.15 |
| ReadMBs | 2.24 | 2.24 | 2.27 | 2.25 |
| Average Access Time | 13.96 | 13.92 | 13.79 | 13.91 |
| Maximum Access Time | 26.55 | 27.34 | 0 | 0 |
| CPU Utilization | 0.1 | 0.1 | 0.17 | 0.14 |
| WriteOps | 103.57 | 120.04 | 113.67 | 121.72 |
| WriteMBs | 3.24 | 3.75 | 3.55 | 3.8 |
| Average Access Time | 9.63 | 8.33 | 8.76 | 8.22 |
| Maximum Access Time | 615.79 | 32.45 | 0 | 0 |
| CPU Utilization | 0.13 | 0.16 | 0.18 | 0.24 |
| J-Micron | Intel | |||
| Deskstar 160 GB array | Caviar 160 GB array | Deskstar 160 GB array | Caviar 160 GB array | |
| ReadOps | 69.44 | 69.81 | 70.5 | 69.72 |
| ReadMBs | 2.17 | 2.18 | 2.2 | 2.18 |
| Average Access Time | 14.4 | 14.32 | 14.24 | 14.43 |
| Maximum Access Time | 29.67 | 26.51 | 0 | 0 |
| CPU Utilization | 3.72 | 3.96 | 3.4 | 3.64 |
| WriteOps | 115.91 | 183.17 | 169.54 | 183.65 |
| WriteMBs | 3.62 | 5.72 | 5.3 | 5.74 |
| Average Access Time | 8.57 | 5.46 | 5.87 | 5.47 |
| Maximum Access Time | 862.22 | 32.33 | 0 | 0 |
| CPU Utilization | 14.07 | 16.08 | 3.79 | 4.04 |
Next are random test results. As expected, in single drive configuration the results between the J-Micron and Intel ICH8R is similar. The only difference seem to be slightly higher random average write on Hitachi Deskstar when paired with ICH8R. With RAID 0 configurations, the boost is much more noticeable - write operations rose from 115.91 op/s to 169.54 op/s and random average writes rose from 3.62 MB/s to 5.3 MB/s on the Deskstar array. We do not see any difference on the Caviar array with the J-Micron and Intel ICH8R controller.
Let's see what happens when we enable Volume Write Back Cache.
| Sequential |
J-Micron | Intel (Volume Write Back Cache Enabled) | ||
| Deskstar 160 GB array | Caviar 160 GB array | Deskstar 160 GB array | Caviar 160 GB array | |
| ReadOps | 2989.39 | 3351.38 | 4734.15 | 4886.61 |
| ReadMBs | 93.42 | 104.73 | 147.95 | 152.71 |
| Average Access Time | 0.33 | 0.3 | 0.22 | 0.22 |
| Maximum Access Time | 16.05 | 10.45 | 0 | 0 |
| CPU Utilization | 6.96 | 6.22 | 6.7 | 10.87 |
| WriteOps | 2698.06 | 2698.24 | 3623.16 | 4796.42 |
| WriteMBs | 84.32 | 84.32 | 113.23 | 149.89 |
| Average Access Time | 0.37 | 0.37 | 0.28 | 0.23 |
| Maximum Access Time | 1.7 | 16.24 | 0 | 0 |
| CPU Utilization | 4.24 | 4.31 | 5.58 | 11.95 |
In short, the differences is tremendous. Number of operations per second and average reads basically increase by about 50 percent. The Deskstar array experienced a higher increase than the Caviar (58 percent compared to 45 percent, respectively). The likely culprit holding the Caviar array back seems to be the CPU utilization - definitely higher on the Caviar array compared to the Deskstar's. Basically, we're seeing the same situation with writes. However, the degree of increase is different (34 percent on the Deskstar array and 77 percent on the Caviar's). Since CPU utilization is also higher with writes, obviously CPU utilization is not holding the Caviar back (though it is a little bit too high for our taste).
The results we're seeing here are very different to what we saw earlier with HD Tach. Enabling Volume Write Back Cache seems to also boost writes. They also differ in trend - the Caviar array average writes are much higher than the Deskstar - very different to what we saw with HD Tach. Well, it wouldn't be the first time HD Tach got it wrong.
| Random |
J-Micron | Intel (Volume Write Back Cache Enabled) | ||
| Deskstar 160 GB array | Caviar 160 GB array | Deskstar 160 GB array | Caviar 160 GB array | |
| ReadOps | 69.44 | 69.81 | 70.6 | 70.14 |
| ReadMBs | 2.17 | 2.18 | 2.2 | 2.19 |
| Average Access Time | 14.4 | 14.32 | 14.16 | 14.23 |
| Maximum Access Time | 29.67 | 26.51 | 0 | 0 |
| CPU Utilization | 3.72 | 3.96 | 0.12 | 3.52 |
| WriteOps | 115.91 | 183.17 | 173.19 | 184.45 |
| WriteMBs | 3.62 | 5.72 | 5.41 | 5.76 |
| Average Access Time | 8.57 | 5.46 | 5.85 | 5.42 |
| Maximum Access Time | 862.22 | 32.33 | 0 | 0 |
| CPU Utilization | 14.07 | 16.08 | 0.33 | 3.94 |
We've already seen what Volume Write Back Cache have to offer in sequential read and write patterns, what about random test results? Looks like it have something else to offer as well. Look at the Deskstar's array CPU utilization with reads - way lower than on the J-Micron controller and with Volume Write Back Cache disabled. Improvements with random writes are very significant - an increase in the number of write operations (from 115 op/s to 173 op/s), transfer rate and again - CPU utilization. We went from 14 percent to 0.33 percent! Even the Caviar experience a much lower CPU utilization with random reads.
Performance
To measure real world performance, we choose to measure the time it takes for a game to load a level. We choose three games for this test - F.E.A.R, Quake 4 and Serious Sam II. Because of the way the games work (caching some elements in RAM and virtual memory), we ran test for both first time load and reloads. We restart the computer after each first time load, clearing the RAM and virtual memory from any game data. Reloads or consecutive loads are done consecutively - in F.E.A.R and Quake 4, we load another level before reloading the first chapter. In Serious Sam, we reload the game directly after finishing one test run.We chose both F.E.A.R's and Quake 4's opening cinematic simply because these levels are generally much larger than the average levels for both games. For Serious Sam II, we choose the final Mental Institution level for the same reason. Measurements are taken with FRAPS, from the time the game starts loading the level to the start of the cinematic sequence. Since we're measuring load times, the performance metric is time (in msec) - lower is better.
We also perform another additional test for this round up. We made an ISO image of a Company of Heroes DVD, copying it to the first and second drive in a single drive configurations and to the RAID 0 stripe in RAID configuration. We mounted the ISO, installed the game and record the time taken for the game to install itselt to the hard drive. The tests were perform three times, from which an average is computed and used for comparison. By placing the ISO in the same drive (and in the same RAID 0 stripe) as the system, we're testing the I/O performance of the drive, forcing the drive to always switch between reading the ISO and writing the game data. By placing the ISO on the second drive, we are basically testing file copy performance - one drive reads while the another (the system drive) writes. From this test, we can basically see the 'burden' of using RAID 0.
We'd like to thank Tagan for supplying the additional power supply and Gigabyte for supplying both the Gigabyte P965-DS3P and Radeon X1950 Pro for this article. And of course, thanks to Hitachi and Western Digital for allowing us to spend more time with their 160 GB Deskstar and Caviar drives a little bit longer.
Our test setup
Intel Core 2 Duo E6300 socket LGA-775
4 x 512 MB A-DATA Vitesta 5-5-5-18 PC6400 DDR2-SDRAM
Gigabyte Radeon X1950 Pro 256 MB graphics card
Gigabyte P965-DS3P Intel P965 motherboard
LiteOn 1673S DVD-RW
Tagan TG530-U15 530 watts ATX/BTX power supply
Windows XP Professional with Service Pack 2 installed
ATI Catalyst 7.2 reference driver
Intel Chipset Software Installation Utility 8.1.0.1006
DirectX 9.0c
all respected games used for benchmarks have been updated to their latest,final builds.
The graphs are pretty self explanatory, but in case you can't see the text, they're arranged in groups of three colors: green for single drive results, blue for RAID 0 array results and finally, red for RAID 0 array results with Volume Write Back enabled (only with the ICH8R). Results are in milliseconds, so 25821 means 25.821 seconds. Remember - shorter bars mean better performance.
The results:
F.E.A.R- Opening Cinematic, First
Run Load
J-Micron
Deskstar
Intel
Deskstar
J-Micron
Caviar
Intel
Caviar
F.E.A.R- Opening Cinematic,
Consecutive Load
J-Micron
Deskstar
Intel
Deskstar
J-Micron
Caviar
Intel
Caviar
With single drive configurations, the J-Micron controllers has the edge over Intel's ICH8R. But not so with RAID 0 arrays - the Desktars array is a little bit slower with Intel ICH8R (even with Volume Write Back Cache enabled) while the Caviar is slightly faster in RAID 0 on the J-Micron controller.
The most likely explanation for longer load times when Volume Write Back Cache enabled with the Caviar array is CPU utilization. After all, when a game loads a level, it's very likely there are some other process running besides just loading and copying data from the hard drive to main memory (RAM). However, it's interesting to see how both drives behave so differently - the Deskstar array seem to 'like' Volume Write Back Cache very much.
Quake4 - Opening Cinematic, First
Run Load
J-Micron
Deskstar
Intel
Deskstar
J-Micron
Caviar
Intel
Caviar
Quake4 - Opening Cinematic,
Consecutive Load
J-Micron
Deskstar
Intel
Deskstar
J-Micron
Caviar
Intel
Caviar
In Quake 4, we can see the Deskstar actually 'need' Volume Write Back Cache set to 'enabled' just to remain competitive with a single Deskstar or the Caviar, both as a single drive and in a RAID 0 array. Apparently, the same also applies to reloads. With it enabled, the Deskstar is just slightly faster than the Caviar - single and RAID 0 array - whether you're using the J-Micron and Intel ICH8R controller. As expected, higher CPU utilization caused slightly longer load times with the Caviar RAID 0 array when Volume Write Back Cache is enabled.
SeriousSam II - Mental
Institution, Level Load
J-Micron
Deskstar
Intel
Deskstar
J-Micron
Caviar
Intel
Caviar
Serious Sam II behaves pretty much like Quake 4's consecutive load tests. The Hitachi Deskstars really want you to enable Volume Write Back Cache if you're using them in RAID 0 configuration with Intel's ICH8R controller. By streamling IO request, you can reduce CPU utilization significantly with Hitachi Deskstar drives.
Company of Heroes ISO Test
In retrospect, the test results we've seen so far have shown us that with this setup, CPU utilization is the determining factor affecting loading times. So, in effect , our usual game load tests are CPU utilization tests rather than average read / writes test. While this is good sicne we can see the effect the controllers (and RAID 0) have in real life situations, it also means we have to rely on other tests to show more storage focused test results able to show read and write performance. That's why we began using a new test with our previous hard drive round up - the ISO test. With this test we can test write performance of these drives in situations close to real life.| J-Micron | Intel | Intel (Volume Write Back Cache Enabled) | ||||
| Deskstar 160 GB | Caviar 160GB | Deskstar 160 GB | Caviar 160GB | |||
| ISO on the second drive | 103.33 | 99.33 | 99.67 | 90.33 | ||
| ISO on the same drive | 194.33 | 204 | 221.33 | 155.67 | ||
| Deskstar 160 GB - Array | Caviar 160 GB - Array | Deskstar 160 GB - Array | Caviar 160 GB - Array | Deskstar 160 GB - Array | Caviar 160 GB - Array | |
| ISO on the same array | 169.33 | 142 | 144.67 | 145.67 | 90 | 97.33 |
(results are in seconds - smaller is better)
OK - notice how the Desktars arrays are significantly faster with Intel ICH8R compared to with the J-Micron controller - we saved on average 25 seconds simply by using it. That's a 14 percent improvement - on the other hand, the Caviar array actually is just a tiny bit slower with ICH8R (3 seconds slower). However, it's the savings with Volume Write Back Cache enabled that's, well, phenomenal. With Volume Write Back Cache enabled, the array perform much like if we use the drives in single drive configuration - the Company of Heroes installation process only took about 90 seconds. Mind you, that's roughly a 4 GB game installation. The Caviar array is about 7 seconds slower than the Deskstar's, but it also 7 seconds slower than two Caviars in single drive configuration with the same test.
Conclusion:
After patching our Gigabyte P965-DS3P LAN controller's EEPROM, we've managed to get the onboard ICH8R SATA / RAID controllers working normally with Western Digital drives. Originally, we set out to use the controller for our hard drive round up (which you can read here). So naturally, we spent the opportunity to do more testing. Today's test reveal much of the reasons why we think the Intel ICH8R SATA / RAID controllers are better than J-Micron's - lower CPU utilization and 'smoother' sustained transfer rates. However, it would seem this controller is still a little bit 'picky' - the lower performance with Western Digital Caviar 1600AJS drives when Volume Write Back Cache is enabled is one evidence of that. A pity really, since enabling Volume Write Back Cache can offer so much improvement - just look at the Hitachi Deskstar 7K160 drive performance.Why is lower CPU utilization so important? For one, lower CPU utilization means the processor has more time do something else and that means doing something more important than just reading / writing data from RAM to the hard drive and vice versa. As you can see from our tests, CPU utilization have a hand in determining the amount of time it took to load a level. Another advantage is sound - we notice quite a lot of sound distortion during the Company of Heroes installation test (in the music playing in the background) with J-Micron controllers and not so with ICH8R. It may be small, but it's another bottlneck which may cause stutter or lag when you're playing games.
As far as the drives are concerned, we still recommend both drives. This article merely completes our hard drive round up, showing that the same hard drives with different controllers may (still) offer different results. Simply because one technology or feature works on another drive does not mean the same apply to another, more so if you use diffferent controllers.
Go to top