skip to main content
10.1145/1006209.1006213acmconferencesArticle/Chapter ViewAbstractPublication PagesicsConference Proceedingsconference-collections
Article

Inter-reference gap distribution replacement: an improved replacement algorithm for set-associative caches

Published: 26 June 2004 Publication History

Abstract

We propose a novel replacement algorithm, called Inter-Reference Gap Distribution Replacement (IGDR), for set-associative secondary caches of processors. IGDR attaches a weight to each memory-block, and on a replacement request it selects the memory-block with the smallest weight for eviction. The time difference between successive references of a memory-block is called its Inter-Reference Gap (IRG). IGDR estimates the ideal weight of a memory-block by using the reciprocal of its IRG.To estimate this reciprocal, it is assumed that each memory-block has its own probability distribution of IRGs; from which IGDR calculates the expected value of the reciprocal of the IRG to use as the weight of the memory-block. For implementation, IGDR does not have the probability distribution; instead it records the IRG distribution statistics at run-time. IGDR classifies memory-blocks and records statistics for each class. It is shown that the IRG distributions of memory-blocks correlate their reference counts, this enables classifying memory-blocks by their reference counts. IGDR is evaluated through an execution-driven simulation. For ten of the SPEC CPU2000 programs, IGDR achieves up to 46.1% (on average 19.8%) miss reduction and up to 48.9% (on average 12.9%) speedup, over the LRU algorithm.

References

[1]
A. V. Aho, P. J. Denning, and J. D. Ullman. Principles of optimal page replacement. J. of ACM, 18(1):80--93, 1971.
[2]
L. A. Belady. A study of replacement algorithms for virtual storage computers. IBM Sys. J., 5(2):78--101, 1966.
[3]
J. Choi, S. H. Noh, S. L. Min, and Y. Cho. Towards application/file-level characterization of block references: A case for fine-grained buffer management. In Proc. ACM SIGMETRICS Conf., pages 286--295, June 2000.
[4]
J. E. G. Coffman and P. J. Denning. Operating Systems Theory. Prentice-Hall, Englewood Cliffs, 1973.
[5]
S. Jiang and X. Zhang. Lirs: An efficient low inter-reference recency set replacement policy to improve buffer cache performance. In Proc. ACM SIGMETRICS Conf., 2002.
[6]
T. Johnson and D. Shasha. 2q: A low overhead high performance buffer management replacement algorithm. In Proc. the 20th Int'l Conf. on VLDB, pages 439--450, 1994.
[7]
C. Kim, D. Burger, and S. W. Keckler. An adaptive, non-uniform cache structure for wire-delay dominated on-chip caches. In Proc. ASPLOS, pages 211--222, Oct. 2002.
[8]
J. M. Kim, J. Choi, J. Kim, S. H. Noh, S. L. Min, Y. Cho, and C. S. Kim. A low-overhead, high-performance unified buffer management scheme that exploits sequential and looping references. In Proc. the 4th USENIX Symp. on Operating System Design and Implementation, pages 119--134, Oct. 2000.
[9]
D. Lee, J. Choi, J.-H. Kim, S. H. Noh, S. L. Min, Y. Cho, and C. S. Kim. Lrfu: A spectrum of policies that subsumes the least recently used and least frequently used policies. IEEE Trans. on Computers, 50(12):1352--1360, 2001.
[10]
N. Megiddo and D. S. Modha. Arc: A self-tuning, low overhead replacement cache. In Proc. the 2nd USENIX Conf. on File and Storage Technologies (FAST 03), Mar. 2003.
[11]
E. J. O'Neil, P. E. O'Neil, and G. Weikum. The lru-k page replacement algorithm for database disk buffering. In Proc. ACM SIGMOD Conf., pages 297--306, 1993.
[12]
V. Phalke and B. Gopinath. An inter-reference gap model for temporal locality in program behavior. In Proc. SIGMETRICS Conf., pages 291--300, 1995.
[13]
J. T. Robinson and M. V. Devarakonda. Data cache management using frequency-based replacement. In Proc. SIGMETRICS Conf., pages 134--142, 1990.
[14]
J. Schauer. Opensource floating point adder, May 2002. http://www.hmc.edu/chips.
[15]
G. S. Shedler and C. Tung. Locality in page reference strings. SIAM J. on Computing, 1:218--241, Sept. 1972.
[16]
P. Shivakumar and N. Jouppi. Cacti 3.0: an integrated cache timing, power, and area model. Technical Report 2001/2, Compaq WRL, Aug. 2001.
[17]
M. Takagi. Improving Cache Performance by Exploiting Redundancy, Temporal Affinity, and Reuse of Data. PhD thesis, Univ. of Tokyo, Dec. 2003.
[18]
M. Uya, K. Kaneko, and J. Yasui. A cmos floating point multiplier. IEEE J. of Solid-Sate Circuits, 19(5):697--702, Oct. 1984.
[19]
W. A. Wulf and S. A. McKee. Hitting the memory wall: Implications of the obvious. Computer Architecture News, 23(1):20--24, Mar. 1995.
[20]
Y. Zhou, J. F. Philbin, and K. Li. The multi-queue replacement algorithm for secondary level buffer caches. In Proc. USENIX Technical Conf., June 2001.

Cited By

View all
  • (2024)Designing a Deep Neural Network engine for LLC block reuse prediction to mitigate Soft Error in MulticoreMicroelectronics Reliability10.1016/j.microrel.2024.115377156(115377)Online publication date: May-2024
  • (2023)ACIC: Admission-Controlled Instruction Cache2023 IEEE International Symposium on High-Performance Computer Architecture (HPCA)10.1109/HPCA56546.2023.10071033(165-178)Online publication date: Feb-2023
  • (2023)Energy efficiency in multicore shared cache by fault tolerance using a genetic algorithm based block reuse predictorMicroprocessors and Microsystems10.1016/j.micpro.2023.104864101(104864)Online publication date: Sep-2023
  • Show More Cited By

Index Terms

  1. Inter-reference gap distribution replacement: an improved replacement algorithm for set-associative caches

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Conferences
    ICS '04: Proceedings of the 18th annual international conference on Supercomputing
    June 2004
    360 pages
    ISBN:1581138393
    DOI:10.1145/1006209
    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

    Sponsors

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 26 June 2004

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. cache memory
    2. replacement algorithm
    3. set-associative cache

    Qualifiers

    • Article

    Conference

    ICS04
    Sponsor:

    Acceptance Rates

    Overall Acceptance Rate 629 of 2,180 submissions, 29%

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)10
    • Downloads (Last 6 weeks)2
    Reflects downloads up to 05 Mar 2025

    Other Metrics

    Citations

    Cited By

    View all
    • (2024)Designing a Deep Neural Network engine for LLC block reuse prediction to mitigate Soft Error in MulticoreMicroelectronics Reliability10.1016/j.microrel.2024.115377156(115377)Online publication date: May-2024
    • (2023)ACIC: Admission-Controlled Instruction Cache2023 IEEE International Symposium on High-Performance Computer Architecture (HPCA)10.1109/HPCA56546.2023.10071033(165-178)Online publication date: Feb-2023
    • (2023)Energy efficiency in multicore shared cache by fault tolerance using a genetic algorithm based block reuse predictorMicroprocessors and Microsystems10.1016/j.micpro.2023.104864101(104864)Online publication date: Sep-2023
    • (2022)Effective Mimicry of Belady’s MIN Policy2022 IEEE International Symposium on High-Performance Computer Architecture (HPCA)10.1109/HPCA53966.2022.00048(558-572)Online publication date: Apr-2022
    • (2021)RippleProceedings of the 48th Annual International Symposium on Computer Architecture10.1109/ISCA52012.2021.00063(734-747)Online publication date: 14-Jun-2021
    • (2021)Designing a Cost-Effective Cache Replacement Policy using Machine Learning2021 IEEE International Symposium on High-Performance Computer Architecture (HPCA)10.1109/HPCA51647.2021.00033(291-303)Online publication date: Feb-2021
    • (2019)Cache Replacement PoliciesSynthesis Lectures on Computer Architecture10.2200/S00922ED1V01Y201905CAC04714:1(1-87)Online publication date: 17-Jun-2019
    • (2019)Applying Deep Learning to the Cache Replacement ProblemProceedings of the 52nd Annual IEEE/ACM International Symposium on Microarchitecture10.1145/3352460.3358319(413-425)Online publication date: 12-Oct-2019
    • (2019)Writeback-Aware Caching (Brief Announcement)The 31st ACM Symposium on Parallelism in Algorithms and Architectures10.1145/3323165.3323169(345-347)Online publication date: 17-Jun-2019
    • (2017)Maximizing Cache Performance Under Uncertainty2017 IEEE International Symposium on High Performance Computer Architecture (HPCA)10.1109/HPCA.2017.43(109-120)Online publication date: Feb-2017
    • Show More Cited By

    View Options

    Login options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Figures

    Tables

    Media

    Share

    Share

    Share this Publication link

    Share on social media