"Would you be interested in seeing benchmarks of Facebook's Flashcache in the coming weeks?"
Of course!
All unexpected tests are welcome. And this is a fresh one at that too! Go ahead, make our day!
Phoronix: Facebook's Flashcache For The Linux Kernel
Facebook has made many open-source contributions over the years from their high-performance PHP-To-C++ compiler, to parts of their infrastructure, to some of their development tools. One of their open-source projects they made public last year for increasing their database performance was Flashcache. Flashcache is a kernel module that provides a block cache for Linux with various caching modes...
http://www.phoronix.com/vr.php?view=OTk0MA
"Would you be interested in seeing benchmarks of Facebook's Flashcache in the coming weeks?"
Of course!
All unexpected tests are welcome. And this is a fresh one at that too! Go ahead, make our day!
Sounds like one of those "hybrid" hard drives emulated in software. While this is no doubt more flexible, it would be interesting to know how it performs compared to a "real" hybrid drive.
Though it's important to remember that large static caches are not meant for the synthetic workloads found in PTS. I can't find the article right now, but IIRC the last time Michael tried to benchmark a hybrid drive by just running PTS on it, the results were rather inconclusive.
Definitely would like to see some benchmarks.
Where I work we've been considering this for a few very demanding, write-intensive database systems. Obviously there's considerable risk with using write-back caching, but we may have no other option (well we do, but it involves large amounts of money that management don't want to spend).
Compare it to bcache (http://bcache.evilpiepirate.org)
I'd be most interested if bcache (by Kent Overstreet, cgit is at http://evilpiepirate.org/git/ ) was compared to flashcache. I'm reluctant to trust flashcache, because their documentation talks about it being trivial to support mirrored caches by building a raid0 and using that as the cache device. Really brings their competence into question when they don't know the difference between mirroring and striping. Also, Kent is working on adding multiple caches per set, which will mean you'll have two ssds caching the same data, with read caches striped and write caches mirrored without any user intervention other than registering the devices with bcache (similar to a dmsetup call or a filesystem mount in semantics, but done by echoing the device name into a file in /sys [though that interface is under fire])
Michael Larabel
http://www.michaellarabel.com/