EnhanceIO: New Solid State Drive Caching For Linux

Written by Michael Larabel in Free Software on 13 January 2013 at 12:28 PM EST. 8 Comments
FREE SOFTWARE
A commercial company has opened up their Linux driver that is based upon their SSD (Solid-State Drive) caching software product. This code is designed to use SSDs as cache devices for traditional rotating hard drives. This new SSD caching driver is based upon Facebook's Flashcache.

Flashcache is the project Facebook open-sourced in 2011 that is a kernel-level solution for providing a block cache for Linux that supports multiple caching models. Flashcache can be used to accelerate reads and writes from slower rotational media by caching the data on a solid-state drive.

Based upon Flashcache, STEC Inc has opened up their EnhanceIO SSD caching software for Linux. EnhanceIO uses SSDs as cache devices for traditional HDDs and works with any block device whether it be an actual physical device, a disk partition, a RAID-ed DAS device, SAN volumes, and device mapper volumes.

EnhanceIO supports caching modes of read-only, write-through, and write-back. The cache replacement policies are random, FIFO, and LRU.

STEC Inc didn't simply make a couple of changes to Flashcache and call it something new, but rather they have made some significant and original improvements. Over Flashcache, EnhanceIO adds a new write-back enhance that's designed from scratch, transparent cache support not using the Linux device mapper, large I/O support, a smaller memory footprint, supports loadable replacement policies, optimal alignment of data blocks on SSDs, improved device failure handling, and code optimizations.

The EnhanceIO code was originally opened in late December while on Saturday the work was just announced on the Linux kernel mailing list. "STEC is happy to announce hosting of our EnhanceIO SSD caching software on github. We would like to invite kernel hackers to try it. We'll appreciate your valuable feedback to help us improve it to the standards of Linux kernel source code. We hope to eventually submit it for a possible inclusion in Linux kernel."

The GPL-licensed code to EnhanceIO can be found on GitHub.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week