Flash Caching on the Storage Client
David A. Holland, Elaine Angelino, Gideon Wald, Margo Seltzer
Flash memory has recently become popular as a caching medium. Most
uses to date are on the storage server side. We investigate a
different structure: flash as a cache on the client side of a
networked storage environment. We use trace-driven simulation to
explore the design space. We consider a wide range of configurations
and policies to determine the potential client-side caches might
offer and how best to arrange them.
Our results show that the flash cache writeback policy does not significantly affect performance. Write-through is sufficient; this greatly simplifies cache consistency handling. We also find that the chief benefit of the flash cache is its size, not its persistence. Cache persistence of- fers additional performance benefits at system restart at essentially no runtime cost. Finally, for some workloads a large flash cache allows using miniscule amounts of RAM for file caching (e.g., 256 KB) leaving more mem- ory available for application use.