Bcache: A cache designed for SSDs

This proposal has been rejected.


One Line Summary

Bcache is a writethrough and writeback cache designed for arbitrary workloads and reliable performance, and for optimal IO patterns with SSDs.


SSDs are small and fast, rotating disks are big and slow; in an ideal world, we wouldn’t have to choose what data goes where, much like we don’t worry about the page cache.

Bcache is meant to be robust, and usable and useful in any situation, to get the most performance with minimum human overhead. It has a fairly complex but unique design which does exceedingly well at optimizing IO patterns; it’s more or less designed around a b-tree and garbage collection.

Additionally, the design has proven flexible enough to be useful for more than just caching; the end goal is to be the single index for local storage IO. In this presentation, we’ll be talking about what Bcache does now and outlining future plans.


performance, linux, storage, SSD


  • Biography

    Kent is an engineer at Google, and the author of bcache.