Making SSD & HDD work together like a hybrid

I have a 90GB SSD but 90GB soon gets filled up. My users folder alone is 26GB. To get round this I use Symlinks (read the How-To Geek article for more).

Is there any way to make a separate SSD and HDD work like a hybrid so that frequently accessed files are moved to the SSD automatically? This would be a nice addition to Windows 8 but I'm not holding out my hopes.

I guess ReadyBoost is a bit like this but its more designed for USB sticks I think. I did try installing Windows 7 with the SSD as a readyboost but didn't really notice any much improvement over just using the HDD.


Solution 1:

Given that hybrid hard drives like the Momentus® XT never really took off (there was only one manufacturer, so tier 1 OEMs did not want to use them, plus the drives only cached reads anyway), it looks like there are limited options for SSD hard drive caching, an add in SATA card or a software solution.

SSHD / Hybrid drives

If you need more capacity but don't want to go full SSD, an SSHD might be an option.

More recent drives like the Seagate 3rd generation solid state hybrid drive (SSHD) look more promising than the original offerings, but there are trade-offs. They can allegedly cache some writes, but at the moment they still have very little flash (8GB MLC, with a small portion of the NAND set aside for use in SLC mode, similar to SanDisk’s nCache) and they are only 5400rpm drives.

These days more manufacturers are selling hybrid drives (after rebranding them as SSHD, which sounds deceptively close to SSD) but they are still only 5400rpm laptop SATA drives, no more than 4TB in size, and they still only have 8GB of flash.

Caching an hard drive with an SSD

Unfortunately, none of the options have anywhere near the performance of an SSD. At best you get performance closer to HD than SSD and at worst you get performance which is even lower than the HD on it's own!

On the plus side, if you are upgrading an old SSD then using that old SSD to cache your large storage drive could be a worthwhile option. SSD caching seems to benefit much less from newer, faster SSDs so you get most of the caching benefit from older, relatively slow SSDs.

Add-in SATA cards

One option is an add-in SATA card which can provide this functionality. I believe there are enterprise level solutions for this, but as they are well out of my price range I haven't researched them. The HighPoint RocketHybrid 1220 is much more affordable though, and there is a nice article about this on Tom's Hardware Guide.

My experience with the Add-in SATA card option.

Having seen the Add-in SATA card option in action, I have to say that I'm not impressed with the Marvell 88SE9130 based card that I bought. HyperDuo was incredibly unreliable, the software kept crashing and the performance was rarely higher than the underlying hard drive on its own, even after hours of 'optimisation'.

Even using the card as a 6Gbps SATA III port resulted in worse performance with an Adata S511 SSD than just using the on-board 3Gbps SATA II ports.

Intel Smart Response Technology (requires motherboard support)

Another option is a motherboard with support for Intel Smart Response Technology (which started with the Intel Z68 chipset). Again, THG has a nice article providing an overview of what we can expect of the SSD caching capabilities of this and newer chipsets.

My experience with the Intel SRT option.

After having had the opportunity to play with a Z68 based motherboard, I was even less impressed with Intel Smart Response Technology than I was with HyperDuo!

At the time Smart Response Technology could only cache a Windows boot drive, so you couldn't have an SSD Boot drive and then use SRT to cache another drive in your system. You had to install Windows on the hard drive, install drivers, then the Intel® Rapid Storage Technology (RST) software and then add the SSD. At this point, if you were lucky then you would be able to see a new "Accelerate" tab on the RST application and if not then you may have to start the whole process from scratch to try and get it to work.

Apparently (thanks Nicholas) more recent versions of RST are substantially better. I haven't tried this yet, but apparently you can now cache a non boot hard drive as long as you start with a completely blank SSD (no partitions). You are still limited to 60GB of cache, but once the drive is set up as a cache, the remainder of the drive can be configured as a normal partition. Sadly you are still limited to caching a single drive or raid array.

Alternative software caching options

The last option is a non-Intel software caching solution, like Dataplex, which was bundled with the OCZ Synapse SSD. Unfortunately, this solution (like Intels SRT) only supported caching a single boot drive, so the only benefit was that it doesn't require a Z68 motherboard.

Unfortunately, I have yet to see a review from a site whose methodology I trust, so I can't tell how this option compares with SRT or the add-in card option.

Final option: Don't bother, just manage your storage manually

Fire and forget solutions are all well and good, but sometimes it's just easier to manage these things yourself. Use your SSD and hard drive as separate drives, put stuff that you don't need fast access to on the HD and stuff that do on your SSD. Move things between them as and when you need to.

Tools like NTFS symbolic links, SSD Boost Manager and Folder2Junction could all help. See my answer to Trying to make SSD boot drive with Windows 7 and old drive is not accessible for more details.

Solution 2:

There are a few options:

  1. Intel's newest chipstes, the Z68, have a technology called Smart Response Technology which does exactly that. It uses an SSD as a cache for frequently read files, and for small writes. This only workd on the Z68, though.
  2. DiskKeeper is making a piece of software called Express Cache which does essentially the same thing as the Intel solution. It is only available for OEMs, though, so you would have to get it with a machine.
  3. Several RAID card manufacturers have launched or announced products which allow you to use an SSD as a cache for an RAID array.