Hybrid Hard Drives

If new and improved firmware management doesn't strike your fancy, Microsoft is working together with Samsung and others to create a new breed of hard disk drive. You may have noticed a slide earlier mentioning the potential for "hybrid hard drives". The basic premise of the hybrid hard drive will be the inclusion of non-volatile flash ram inside the drive itself.

Though it hasn't made a great deal of headway yet, Microsoft is really hoping this idea will take off. Gaining support for this technology will round out Longhorn's disk read caching scheme. The aggressive read caching Longhorn does is able to minimize disk accesses for reads by moving large amounts of data into RAM. Unfortunately, using system memory as a writeback cache is not a very feasible (or safe) option. In order to cache disk writes, fast, solid state, non-volatile RAM can be used.

Rather than shove this NVRAM on the motherboard and add a level of complexity to the rest of the system, Microsoft and others have determined that giving hard drive manufacturers full control over the use of NVRAM and caching will allow the rest of the system to operate as if nothing has changed. With the hybrid hard drive managing its own 64MB to 128MB writeback cache, the OS need not worry about what is going on internally with the drive.



The upside to all this is that normal usage models show that average users don't usually write more than 64MB every 10 minutes. This means that the average case may see zero writes hitting the hard drive for 10 minutes, and possibly more with the 128MB solution. Combined with the read cache built into Longhorn, we could see zero disk accesses for 10 to 15 minutes on a heavily utilized system once the OS and applications have initialized. This could mean very large thermal and power savings on notebook drives. Microsoft talked about dropping average drive power consumption over 50%.

In addition to keeping disks turned off on notebook applications, with no parts moving there is less chance for failure. This could help avoid issues that even today's accelerometers can't avoid. An added benefit is also faster resume from hibernation and quick boot time. The system is able to store boot data in the NVRAM. Upon startup, the BIOS is able to access this data without waiting at all for the hard drive to spin up. By the time the system is finished with NVRAM, the drive will be at full speed and ready to continue loading the OS.

There was some talk about hybrid HDDs improving MTBF (mean time before failure), but we will have to wait and talk to the disk manufacturers about this one. It seems counter intuitive that spinning up and powering down the disk more often will do enough to decrease wear on the drive as a whole. The heads will benefit, but how will the added wear on the spindle affect failure rates?

Other questions include the speed and cost of flash RAM proposed for inclusion in hybrid disks. Today's flash RAM is at least an order of magnitude slower than hard drive speeds. Microsoft says they expect 1 nand Flash to reach speeds nearing 100MB/s by the time hybrid disks see the market. They also expect this Flash RAM to be relatively cheap. We aren't so optimistic at this point, but you never know. It may seem enough of an advantage to a company like Samsung (who makes disks and Flash RAM) to really push costs to a point where hybrid hard drives are feasible.

We aren't quite sure we like the idea of windows aggressive approach to caching yet, but it seems to have worked well for OS X thus far. Only time will tell if Microsoft's approach is as good as Apple's.

Thoughts on the Longhorn Driver Model Day One Conclusion
Comments Locked

36 Comments

View All Comments

  • JarredWalton - Saturday, April 30, 2005 - link

    KHysiek - part of the bonus of the Hybrid HDDs is that apparently Longhorn will be a lot more intelligent on memory management. (I'm keeping my fingers crossed.) XP is certainly better than NT4 or the 9x world, but it's still not perfect. Part of the problem is that RAM isn't always returned to the OS when it's deallocated.

    Case in point: Working on one of these WinHEC articles, I opened about 40 images in Photoshop. Having 1GB of RAM, things got a little sluggish after about half the images were open, but it still worked. (I wasn't dealing with layers or anything like that.) After I finished editing/cleaning each image, I saved it and closed it.

    Once I was done, total memory used had dropped from around 2 GB max down to 600 MB. Oddly, Photoshop was showing only 60 MB of RAM in use. I exited PS and suddenly 400 MB of RAM freed up. Who was to blame: Adobe or MS? I don't know for sure. Either way, I hope MS can help eliminate such occurrences.
  • KHysiek - Friday, April 29, 2005 - link

    PS. In this case making hybrid hard drives with just 128MB of cache is laughable. Windows massive memory swapping will ruin cache effectiveness quickly.
  • KHysiek - Friday, April 29, 2005 - link

    Windows memory management is one of the worst moments in history of software development. It made all windows software bad in terms of managing memory and overall performance of OS. You actually need at least 2x of memory neede by applications to work flawlessly. I see that saga continues.
  • CSMR - Thursday, April 28, 2005 - link

    A good article!

    Regarding the "historical" question:
    Strictly speaking, if you say "an historical" you should not pronounce the h, but many people use "an historical" and pronounce the h regardless.
  • Pete - Thursday, April 28, 2005 - link

    That's about how I reasoned it, Jarred. The fisherman waits with (a?)bated breath, while the fish dangles from baited hook. Poor bastard(s).

    'Course, when I went fishing as a kid, I usually ended up bothering the tree frogs more than the fish. :)
  • patrick0 - Wednesday, April 27, 2005 - link

    If Microsoft manages graphics memory, it will sure be a lot easier to read this memory. This can make it easier to use the GPU as a co-processor to do non-graphics tasks. Now I could manage image-processing, but this doesn't sound like a no-graphcs task, does it? Anyways, it is a cpu task. Neither ATI nor nVidia has made it easy so far to use the GPU as co-processor. So I think ms managing this memory will be an improvement.
  • JarredWalton - Wednesday, April 27, 2005 - link

    Haven't you ever been fishing, Pete? There you sit, with a baited hook waiting for a fish to bite. It's a very tense, anxious time. That's what baited breath means.... Or something. LOL. I never really thought about what "bated breath" actually meant. Suspended breath? Yeah, sure... whatever. :)
  • Pete - Wednesday, April 27, 2005 - link

    Good read so far, Derek and Jarred. Just wanted to note one mistake at the bottom of page three: bated, not baited, breath.

    Unless, of course, they ordered their pie with anchovies....
  • Calin - Wednesday, April 27, 2005 - link

    "that Itanium is not dead and it's not going anywhere"

    I would say "that Itanium is not dead but it's not going anywhere"
  • JarredWalton - Tuesday, April 26, 2005 - link

    26 - Either way, we're still talking about a factor of 2. 1+ billion vs. 2+ billion DIMMs isn't really important in the grand scheme of things. :)

    23 - As far as the "long long" vs "long", I'm not entirely sure what you're talking about. AMD initially made their default integer size - even in 64-bit mode - a 32-bit integer (I think). Very few applications really need 64-bit integers, plus fetching a 64-bit int from RAM requires twice as much bandwidth as a 32-bit int. That's part one of my thoughts.

    Part 2 is that MS may have done this for code compatibility. While in 99% of cases, an application really wouldn't care if the 32-bit integers suddenly became 64-bit integers, that's still a potential problem. Making the user explicitly request 64-bit integers gets around this problem. Things are backwards compatible.

    Anyway, none of that is official, and I'm only partly sure I understand what you're asking in the first place. If you've got some links for us to check out, we can look into it further.

Log in

Don't have an account? Sign up now