SSD’s firmware version might be really important

I had a good old Asus EEE 1005HA netbook running Windows 7 just fine, albeit slow. The best way of speed it up was to upgrade it to a SSD. The I/O difference should speed it up considerably as the original disk was a 5400rpm one. The SSD prices are low enough, too.

So I went and bought a small, reasonably priced OCZ Vertex Plush 60GB SSD. The disk replacement process isn’t a very simple one because the disk is buried in the guts of the netbook. See one and two (there are more videos, just google them) and be careful with the connectors as they are really fragile.

I’ve replaced the disk, put everything back together and then booted Windows 8 x86 from an USB stick (the easiest way to burn an ISO to an USB stick is to use Windows 7 USB/DVD Download tool). Everything went smooth until Windows finalized the setup. Bam. I’ve got an “Windows couldn’t configure hardware on this device” error (very helpful description, isn’t it). After restart the computer didn’t boot but rather complained about missing boot disk. Huh? That’s odd and when Windows install fails it has to do with hardware issues usually – this time it hinted some sort of problems related to the SSD. Perhaps the problem lies in the Intel Atom CPU or something other on my netbook. Hence I’ve tried installing Windows 7 x86 as I knew it works. Bam. The same error. Changing BIOS settings didn’t help either. Same error over and over again. I’ve also got odd errors during partition management. BTW I’d really like to know which genius at Microsoft thought of requiring the Windows license key before OS is installed (yes, yes, you have to retype it each try you make, very annoying in such cases). Just for fun I tried installing Ubuntu and, surprisingly, I had no problems and everything was really smooth. At this point I was tempted to leave it with Ubuntu but I had other requirements and had to have Windows.

Then I started googling around if somebody experienced similar problem and after a while I’ve come to a forum thread where they mentioned very faulty OCZ Vertex Plus firmware. According to that thread older (than the latest 3.55) firmware versions have fatal issues with Windows. Only the latest and newest 3.55 should work. Coming from HDD world I never thought that a disk firmware could create such havoc but it fitted the description of my problems. Note that there is no easy way to check the disk’s firmware version without the OS installed (and even then). Anyway, there is an ISO you have to burn to a CD and boot computer from there (beforehand make sure the SSD is in IDE, not AHCI mode). The ISO is linux based and you’d need an utility to burn it to USB stick (netbooks don’t have CD drives usually). Free UNetbootin does the work just fine.

Once I’ve booted from firmware upgrade USB stick I discovered that my SSD was running firmware version 3.50. Bingo. Update went smoothly and after yet another Windows 8 reinstall everything worked as it should.

Intel Smart Response Technology and not so smart UI technology

Due to some recent BSODs on my system where I couldn’t find out the source of the problems I’ve opted for a simple solution of replacing CPU, motherboard and RAM. I am not a huge believer in SSDs due to their problems (pricey, not exactly super reliable) but still, I decided to go with a SSD used for caching purposes – small and relatively inexpensive SSD required.

Currently I am running a pair of WD Velociraptor disks in a RAID array and a pair of Seagate’s 1.5TB disks in the second RAID array both controlled by Intel Rapid Storage Technology (IRST). On each of the RAID arrays I have two volumes – one in RAID 0 and the other in RAID 1 configuration (I use the zeros for speed and non critical data – mixing RAID modes on the same array is courtesy of IRST driver). SSD caching would improve the read time while I would keep the RAID benefits. The only downside to this approach is SSD wear time, but time will tell.

There are basically two SSD caching options I am aware of – either a SSD with bundled Dataplex caching software or motherboard that supports Intel Smart Response Technology (ISRT). Mind though they are both purely software solutions. Well, Intel is Intel and ISRT supports RAID arrays (probably just the ones based on their Rapid Storage Technology which I am using). One of the few motherboards supporting ISRT is Gigabyte Z68XP-UD3 (there is even Z68XP-UD3-iSSD version with Intel 311 20GB SSD (<- Intel’s recommended SSD for caching) on the mainboard). However the later is hard to find in my country so I went with the former. ISRT is limited to max 64GB SSD size and thus I bought an OCZ Vertex 3 60GB SSD.

With all pieces at my disposal I built new hardware configuration, properly attached SSD to a shiny SATA III port, installed the EZ Smart Response drivers that come with motherboard (ISRT drivers are not downloadable from Intel’s Download Center for some reason) and restarted the computer. Once rebooted I went into Rapid Storage Technology control center (where ISRT UI feature is supposed to live) and nothing. No such option, nada.

image

There was no sign of Acceleration options. Nothing. Huh? EZ Smart Response drivers installed a shortcut in Start/Programs menu. Tried clicking that and received a very useless dialog box stating:

---------------------------
Warning
---------------------------
This hard drive can't be supported.
---------------------------
OK  
---------------------------

Whoa, what hard drive and why?

Updating motherboard BIOS to the latest F10 version didn’t produce results. At this point I turned to my best friend Google search but found no solutions nor explanations, just a bunch of people with similar problem. Since my friend failed (which is a rare occasion) I even read the instructions that came with motherboard – ISRT has its own booklet. Nothing. I suspected a problem with caching RAID arrays. Thus I quickly thrown in a blank disk as a standalone one thinking that it should le me cache at least this standalone one, restarted and … still nothing.

While poking in BIOS RAID settings I received warning “max number of  arrays created” or something like that. Hm, can it be that caching requires a volume on its own? Next step, since the second RAID array isn’t critical to the boot process I simply detached both Seagate’s and restarted. Booting the system with a single RAID array and a standalone disk finally produced some results. This time the acceleration option magically appeared for the standalone disk but not for the RAID array. But hey, that’s some progress and I was happy to see acceleration option. It is supposed to cache RAID arrays as well, why doesn’t it?

There was one option remaining. I had a suspicion that what was causing the missing caching option was the fact that I had two volumes (RAID 0, RAID 1) on the same array. Next step was elimination of the RAID 0 volume and leaving a single RAID 1 volume on the array (I resized the partitions extremely easily using Acronis Disk Director Suite). Rebooting, crossing fingers, and … a disappointment. Still couldn’t enable caching of the RAID array. However something else was going on at this point. Once during my many reboots I had to force the reboot using the hardware button. As a consequence IRST went into RAID array verification mode – a normal procedure, which takes some time. I just left it do its job and once RAID array was verified – success! The caching option just appeared for the RAID volume out of blue sky. Few more clicks and my boot RAID volume was SSD cached.

Once cache is enabled the system becomes much faster of course, well, the loading from disk is faster. It might be significant or not, depends on your typical work scenario. I don’t often start new programs thus the benefits aren’t stellar in my case but speeding things up doesn’t hurt, eh.

The bottom line

  1. Intel Smart Response Technology user interface is bad beyond explanation (the same goes to IRST). Instead of telling me why it can’t enable caching on a volume the options are just missing. And if it starts doing this right after installation one is left to wonder what’s wrong, where is the problem and whether the thing even works. Much much better approach would be to have acceleration option always present with a clear explanation in the case of the problem.
  2. Intel Smart Response Technology documentation is poor as well.
  3. If it doesn’t work is either because you reached the maximum RAID volume number (4 in my case), because IRST is doing RAID array verification or because there is more than one volume on the array.
  4. Once it works it speeds things considerably up. I am using read-only cache mode at this point (there is maximized mode that features caching writes as well)
  5. It produces near-pure-SSD experience for considerably less price.
  6. The caching algorithm is a black box and cache utilization and other metrics aren’t exposed thus I have no idea what it does and how it does.
  7. SSD might wear off sooner, no idea on this, time will tell.

Hope this will help others venturing into Intel Smart Response Technology. You know, the brave fools Smile