Wednesday, 24 March 2010

The Difference Between OS Write-Back Caching and Hardware RAID Write-Back Caching

The biggest performance increase due to Write-Back cache (Write-Cache) is an add-in or on board RAID controller's ability to fetch data from memory that is being frequently read and written to.

The biggest drawback to that is the fact that the memory on the controller is volatile meaning that no power = no more data.

Add a battery backup to the controller and we now have a different story. Most controllers that have that option will enable Write-Back when the battery is installed and _fully_ charged ... and only then. There is a setting to force it enabled, but given the circumstances this is obviously a dangerous proposition.

There is also a form of Write-Back cache in the Windows OS. Witness the tray icon that we use to "eject" a USB drive connected to the system in order to properly remove it.


This is for the OS's Write-Back cache and _not_ the hardware RAID controller's Write-Back cache.

Hardware driven RAID 5 only makes sense when the RAID controller has Write-Back enabled and a battery backup in place. Otherwise, those parity bits really kill write performance. Double that hit for RAID 6. RAID 50 and 60 make up for that to some degree, but by that point RAID 10 is the way to go in most cases.

Adaptec is utilizing Intel's Extreme series 32GB SSD drives in a Write-Back Cache product they call MaxIQ.

Since SSD is non-volatile, meaning power loss does _not_ equal data loss, the MaxIQ solution makes a lot of sense. Performance improvements for Adaptec RAID cards to which a MaxIQ solution is attached to see _huge_ performance benefits. This improvement is very beneficial where the extra cost is made up for in the improved I/O performance hand over fist.

BTW, Adaptec Z series RAID also have non-volatile cache memory installed by default, so no need for a battery backup unit. Note that the Z series cache is not the same as the MaxIQ solution.

Just so we are clear, Write-Back in the RAID controller is not the same as Write-Back in the OS. And, by default, server OSs have their own Write-Back disabled. An OS cannot disable the RAID controller's Write-Back since this is a BIOS/firmware level setting done either directly in the RAID controller's BIOS console or via some sort of management software.

Philip Elder
Microsoft Small Business Specialists
Co-Author: SBS 2008 Blueprint Book

*Our original iMac was stolen (previous blog post). We now have a new MacBook Pro courtesy of Vlad Mazek, owner of OWN.

Windows Live Writer

No comments: