Tuesday 17 April 2012

To SSD or not to SSD?

When Solid state drives (SSDs) first arrived on the scene the costs were near insane, people experienced mixed/poor performance, disks were quickly failing, owners experienced low lifespan and firmware constantly requiring upgrading - destroying all data on the disk in the process. This up until recently made having a SSD drive very difficult to justify.

The technology seems to have matured over the last few years, there are now more companies producing SSDs and they are being distributed by the large OEMs along with the latest and greatest computers. The reason for this popularity is undoubtedly the very high read/write speeds, low power consumption and silent,cool operation, with these benefits SSD is undoubtedly the next stage in the evolution of persistent storage.

I've been quite wary up until now, favouring my tried and tested mechanical disk; the familiar hums and clicks associated with the disk spindle churning away can be a comforting sound. You know when the drive is busy and when it's struggling to cope. When a drive is near the end of life you can usually hear a screeching noise and this at least gives you some warning if SMART doesn't pickup any errors. Saying that - I always thought it quite strange to have a mechanical bottleneck in your computer - the limitations of all that fast ram and processor can only write/read from the hard disk as fast as that mechanical spindle can churn. In an attempt to make up for the short-fall in read/write performance I've previously used multiple drives in RAID configuration, with each drive added the noise, heat and power used increased.

I first considered jumping on the SSD bandwagon when I upgraded my PC last year, but the costs of SSD still scared me little too much, having been the victim of HDD failures in the past, speed alone is not my sole concern, data redundancy and size of media in the past has played a significant role. When looking at prices for SSDs at the moment you generally pay around £1 per Gigabyte for low-end models - that can be pretty steep considering you are paying £120 for a 120GB drive, the last time I bought a drive so small was probably back in 2003, if I had a 120GB mechanical disk laying around, I probably wouldn't even consider installing it into my computer.

Despite my reservations the lure of all that speed has got me interested. I had been thinking about the minimum amount of space I can justify and what else I might want to use if for. The operating system, programs I use regularly and perhaps a few resource intensive games is what I decided. I checked my current OS/Programs drive and I'm using 160GB, after cleaning this up I'm down to 140GB - still too much data to fit one one of these cheaper 120GB drives. I found that certain companies such as Corsair and OCZ are selling their 180GB models at £165 and £154 respectively - this seems quite reasonable given the cost of the 120GB models, but with anything larger than this the costs rise dramatically. 180GB for me seems to be the reasonable "sweet spot" to install the OS, Programs and a game or two.

I've had a lot of experience with Corsair and generally found all of their products to be good, but OCZ is a company I don't have much experience with, after reading some reviews I'm still getting a very mixed opinion about both drives. Both the drives in my price-range use the same controller, the Sandforce SF-2281 and both make bold promises of read speed up to 525MB/s write up to 500MB/s, both support TRIM, RAID and have a MTBF greater than 2,000,000 hours. Being unable to see any great difference in the specifications and not wanting to annoy the wife too much I chose the cheapest option, the OCZ Agility 3 180GB.

The Agility series from OCZ is analogous of the Intel's Celeron vs Pentium strategy, in that both the Agility and Vertex ranges offer the similar speeds, but the Vertex series is more expensive. The reason for the need to differentiate these two is due to the kind of memory on the board. Agility uses Asyncronous NAND vs Vertex's Sychronous NAND. Synchronous offers more performance, but costs more to produce, it can maintain read/write speeds better during large file transfers and deals better with incompressible data.


Still being a little unsure of the decision I made in opting for the OCZ over my usual Corsair brand I decided to have an expert test it out for me. Unfortunately he was more interested in eating it than anything else.


So now I have my SSD I went about the task of installing it, physically installing the drive was no issue except for one small problem, all SSDs come in 2.5inch format- the size formerly reserved for laptop hard disks. My case is a Coolermaster HAF932 and it doesn't cater for 2.5inch drives. I can't understand why they abandoned the 3.5inch format, this would have retained compatibility with the majority of cases out of there. Some SSDs such as the Corsair model *sigh* come with a little drive bay converter, I would say this isn't really required because these drives have no moving parts, they require neither acoustic dampening or active cooling diverted onto them. I simply installed the drive with some double-sided Velcro tape to the bottom of my case, out of sight and out of mind.

Currently I have a raid 10 setup on my main controller (4 x hdds), this controller has six ports in total, in addition my motherboard has two lower rated ports connected to a Marvell SE9120 controller, generally you want to not use the Marvell controller as the speed can be very poor, these kind of ports are more suited to SATA DVD RW drives etc. As I wanted to check the firmware version on the drive and ensure it was up to date before I started using it I connected up the drive onto the Marvell Controller, ensured it was set to AHCI and then proceeded to load my operating system. I downloaded OCZ firmware update tool "OCZ Toolbox version 3.02.04" and then started the software. Although windows could see the drive and I could copy files to the drive, the software was unable to see the drive to update.

Where the heck is my drive?

I then went reading OCZ support forums and found that many people experience this issue, it turns out that not only does it have to be a AHCI controller you connect the drive to, it must also be the primary controller - poor show OCZ. It also turns out that you can't update the firmware from the same drive your OS is currently running as this is a destructive update, you certainly can't update from USB caddy either. This is now getting a little bit annoying.

I then plugged the SSD onto port 6 on the main AMD SB850 SATA Controller, went into the bios again. Because I'm using RAID on the other ports on this controller I need to set "SATA IDE Combined Mode" to disabled. This should allow these ports to be used for AHCI or RAID instead of native IDE(for DVD RW's etc).

Setting Sata IDE combined mode to disabled

OK, with that done I booted the OS..... again and then ran the OCZ Toolkit....again. You can see from the results below that I'm not a happy camper.


You can see here - It clearly says it's using AHCI


The OS sees it fine, why can't you OCZ toolbox?

In the end the only way I could make it work it was to install Windows onto another drive and install the OCZ drive as as slave,  I needed to use the built-in Microsoft AHCI driver, it failed to detect it completely with the AMD driver.

Hurrah! Finally!


OK now the easy part, I disconnected all my other drives and then installed my Operating system on the new SSD via WDS. The installation took around 15 minutes with my network being the constraint, pretty good.

A common misconception is "boot up time" is from when he PC is powered on until it reaches the logon screen - not true. The boot-up time is from from then point where POST ends until the logon screen. With the Agility installed my boot time with a fresh image, SP1 and all Windows updates and device drivers installed was 17 seconds, compared to 35 seconds with my 4x hdds in raid 10 setup. Not quite the seven seconds that some other people have reported, but still fast.

To put things into perspective here is the the relevant hardware I am using:
  • AMD Phenom II 1090t Processor @3.2Ghz
  • Asrock 890FX Deluxe 4 Motherboard
  • 16GB of Corsair Vengence DDR3 1600 RAM
  • 4X Seagate ST3500418AS 500GB HDDs in Raid 10 using the on-board AMD Chipset SATA Controller.
The disks in this configuration give me a Windows experience index of between 6.1 and 6.2 depending on whats running when performing the test, with the OCZ Agility I get 7.8.

Windows Experience index gives the drive 7.8

Running under my RAID 10 config under HD Tune 2.55 It shows me I have a maximum Transfer rate of 257 MB/sec and average of 197.6 MB/sec it's certainly no slouch.



Running HD Tune with the SSD however is in a totally different league with a maximum of 324.7 MB/sec and average of 271.7 MB/sec, although I do worry a little bit about the low minimum transfer rate.



I installed Battlefield 3 onto my Agility and this is where I really saw the benefits of SSD, before it would take quite a while to load the game up for the first time, the time between changing levels has been reduced dramatically, it's just a shame that everyone else hasn't got one of these as I find myself still waiting for other people to load up!

Although I'm pleased overall with the drives performance, I can't but help feel a little conned, the drive read/write speeds are nowhere near the advertised 500MB/s, whether this is due to the controller on my motherboard, AMD's drivers or the drive itself is difficult to say. I'll defiantly keep using the drive, but due to the small capacity it's likely it won't be long before it gets full up. I can see the future in the technology of this little drive, but in order to replace the traditional disk, they need to work on increasing the capacities while keeping the costs down. Software is another area in dire need of improvment - the OCZ workbench is a completely useless tool, I can only hope that the firmware installed on my drive isn't as poorly coded.