TinyLFU: A highly efficient cache admission policy

Gil Einziger, Roy Friedman, Ben Manes

Research output: Contribution to journalArticlepeer-review

62 Scopus citations

Abstract

This article proposes to use a frequency-based cache admission policy in order to boost the effectiveness of caches subject to skewed access distributions. Given a newly accessed item and an eviction candidate from the cache, our scheme decides, based on the recent access history, whether it is worth admitting the new item into the cache at the expense of the eviction candidate. This concept is enabled through a novel approximate LFU structure called TinyLFU, which maintains an approximate representation of the access frequency of a large sample of recently accessed items. TinyLFU is very compact and lightweight as it builds upon Bloom filter theory. We study the properties of TinyLFU through simulations of both synthetic workloads and multiple real traces from several sources. These simulations demonstrate the performance boost obtained by enhancing various replacement policies with the TinyLFU admission policy. Also, a new combined replacement and eviction policy scheme nicknamed W-TinyLFU is presented. W-TinyLFU is demonstrated to obtain equal or better hit ratios than other state-of-the-art replacement policies on these traces. It is the only scheme to obtain such good results on all traces.

Original languageEnglish
Article number35
Pages (from-to)1-31
JournalACM Transactions on Storage
Volume13
Issue number4
DOIs
StatePublished - 1 Nov 2017
Externally publishedYes

Keywords

  • Admission policy
  • Caching
  • Counting bloom filter
  • Eviction policy
  • Sketches

ASJC Scopus subject areas

  • Hardware and Architecture

Cite this