Dusty caches for reference counting garbage collection

  • Authors:
  • Scott Friedman;Praveen Krishnamurthy;Roger Chamberlain;Ron K. Cytron;Jason E. Fritts

  • Affiliations:
  • Washington University, St. Louis, MO;Washington University, St. Louis, MO;Washington University, St. Louis, MO;Washington University, St. Louis, MO;Washington University, St. Louis, MO

  • Venue:
  • MEDEA '05 Proceedings of the 2005 workshop on MEmory performance: DEaling with Applications , systems and architecture
  • Year:
  • 2005

Quantified Score

Hi-index 0.01

Visualization

Abstract

Reference counting is a garbage-collection technique that maintains a per-object count of the number of pointers to that object. When the count reaches zero, the object must be dead and can be collected. Although it is cannot detect all garbage on its own, it is well suited for some applications and is implemented typically in conjunction with other methods to increase overall precision. A disadvantage of reference counting is the extra storage traffic that is introduced. In this paper, we describe a new cache write-back policy that can substantially decrease the reference-counting traffic to RAM.We investigate a cache design that takes advantage of temporally silent stores, by remebering the first-fetched value of a cache subblock, so that the subblock need not be written back to RAM unless a different value is present. We present results from experiments that show the effectiveness of this approach, particularly in mitigating the storage traffic due to reference counting.