|
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
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
 |
1
|
|
| |
2
|
L. A. Belady. A study of replacement algorithms for virtual storage computers. IBM Sys. J., 5(2):78--101, 1966.
|
 |
3
|
Jongmoo Choi , Sam H. Noh , Sang Lyul Min , Yookun Cho, Towards application/file-level characterization of block references: a case for fine-grained buffer management, Proceedings of the 2000 ACM SIGMETRICS international conference on Measurement and modeling of computer systems, p.286-295, June 18-21, 2000, Santa Clara, California, United States
|
| |
4
|
|
 |
5
|
|
| |
6
|
|
 |
7
|
|
| |
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 , C. S. Kim, LRFU: A Spectrum of Policies that Subsumes the Least Recently Used and Least Frequently Used Policies, IEEE Transactions on Computers, v.50 n.12, p.1352-1361, December 2001
[doi> 10.1109/TC.2001.970573]
|
| |
10
|
|
 |
11
|
Elizabeth J. O'Neil , Patrick E. O'Neil , Gerhard Weikum, The LRU-K page replacement algorithm for database disk buffering, Proceedings of the 1993 ACM SIGMOD international conference on Management of data, p.297-306, May 25-28, 1993, Washington, D.C., United States
|
 |
12
|
|
 |
13
|
|
| |
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
|
|
| |
20
|
|
CITED BY
|
|
Lingxiang Xiang , Tianzhou Chen , Qingsong Shi , Wei Hu, Less reused filter: improving l2 cache performance via filtering less reused lines, Proceedings of the 23rd international conference on Supercomputing, June 08-12, 2009, Yorktown Heights, NY, USA
|
|