Designing a Flash-Aware Two-Level Cache

  • Ioannis Koltsidas
  • Stratis D. Viglas
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6909)


The random read efficiency of flash memory, combined with its growing density and dropping price, make it well-suited for use as a read cache. We explore how a system can use flash memory as a cache layer between the main memory buffer pool and the magnetic disk. We study the problem of deciding which data pages to cache on flash and propose alternatives that serve different purposes. We give an analytical model to decide the optimal caching scheme for any workload, taking into account the physical properties of the flash disk used. We discuss implementation issues such as the effect of the flash cache block size on performance. Our experimental evaluation shows that questions on systems with flash-resident caches cannot be given universal answers that hold across all flash disks and workloads. Rather, our cost model should be applied per case to provide an optimal setup with confidence.


Main Memory Cache Size Replacement Policy Flash Translation Layer Page Cache 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Agrawal, N., et al.: Design tradeoffs for ssd performance. In: ATC 2008: USENIX 2008 Annual Technical (2008)Google Scholar
  2. 2.
    Belady, L.A., et al.: An anomaly in space-time characteristics of certain programs running in a paging machine. Commun. ACM 12(6), 349–353 (1969)CrossRefGoogle Scholar
  3. 3.
    Birrell, A., et al.: A design for high-performance flash disks. SIGOPS Oper. Syst. Rev. 41(2) (2007)Google Scholar
  4. 4.
    Bouganim, L., Jonsson, B.P., Bonnet, P.: uFLIP: Understanding flash IO patterns. In: CIDR (2009)Google Scholar
  5. 5.
    Chung, T.-S., et al.: System software for flash memory: A survey. In: Sha, E., Han, S.-K., Xu, C.-Z., Kim, M.-H., Yang, L.T., Xiao, B. (eds.) EUC 2006. LNCS, vol. 4096, pp. 394–404. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  6. 6.
    FusionIO - the power of 1000 hard drives in the palm of your hand. TGDaily,
  7. 7.
    Graefe, G.: The five-minute rule twenty years later, and how flash memory chenges the rules. In: DAMON (2007)Google Scholar
  8. 8.
    Intel X25-M SSD: Intel Delivers One of the World’s Fastest Drives. Anand Tech.,
  9. 9.
    Kim, H., Ahn, S.: BPLRU: a buffer management scheme for improving random writes in flash storage. In: FAST 2008, Usenix Association (2008)Google Scholar
  10. 10.
    Kim, J., et al.: A space-efficient flash translation layer for compactflash systems. Transactions on Consumer Electronics (2002)Google Scholar
  11. 11.
    Koltsidas, I., Viglas, S.D.: Flashing up the storage layer. Proc. VLDB Endow. 1(1), 514–525 (2008)CrossRefGoogle Scholar
  12. 12.
    Koltsidas, I., Viglas, S.D.: The case for flash-aware multi level caching. University of Edinburgh Technical Report EDI-INF-RR-1319 (2009)Google Scholar
  13. 13.
    Lee, S.-W., Moon, B.: Design of flash-based DBMS: An in-page logging approach. In: SIGMOD (2007)Google Scholar
  14. 14.
    Leventhal, A.: Flash storage memory. Commun. ACM 51(7), 47–51 (2008)CrossRefGoogle Scholar
  15. 15.
    Narayanan, D., et al.: Migrating enterprise storage to SSDs: analysis of tradeoffs. Microsoft Technical Report MSR-TR-2008-169 (2008)Google Scholar
  16. 16.
    Nath, S., Gibbons, P.B.: Online maintenance of very large random samples on flash storage. Proc. VLDB Endow. 1(1), 970–983 (2008)CrossRefGoogle Scholar
  17. 17.
    OCZ Core Series 64GB SATA II 2.5 Solid State Drive.,
  18. 18.
    Sun Microsystems. The Solaris ZFS filesystemGoogle Scholar
  19. 19.
    Yeong Park, S., et al.: CFLRU: a replacement algorithm for flash memory. In: CASES 2006. ACM, New York (2006)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2011

Authors and Affiliations

  • Ioannis Koltsidas
    • 1
  • Stratis D. Viglas
    • 2
  1. 1.IBM ResearchZurichSwitzerland
  2. 2.School of InformaticsUniversity of EdinburghUK

Personalised recommendations