This Article 
 Bibliographic References 
 Add to: 
A Quantitative Evaluation of Cache Types for High-Performance Computer Systems
October 1993 (vol. 42 no. 10)
pp. 1154-1162

Parallel accesses to the table lookaside buffer (TLB) and cache array are crucial for high-performance computer systems, and the choice of cache types is one of the most important factors affecting cache performance. The authors classify caches according to both index and tag. Since both index and tag could be either virtual (V) or real (R), their classification results in four combinations or cache types. The real address caches with virtual tags for high-performance computer systems in this study are prediction-based, since index bins are generated from a small array and predictions could be false. As a result, they also discuss and evaluate real address MRU caches with real tags, and propose virtually indexed MRU caches with real tags. Each of the four cache types and MRU caches are discussed and evaluated using trace-driven simulation. The results show that a virtually indexed MRU cache with real tags is a good choice for high-performance computer systems.

[1] A. Agarwal,Analysis of Cache Performance for Operating Systems and Microprogramming, PhD dissertation, Tech. Report CSL-TR-87-332, Stanford University, Stanford, Calif., May 1987.
[2] J. Archibald and J. L. Baer, "Cache-coherence protocols: Evaluation using a multiprocessor simulation model,"ACM Trans. Comput. Syst., vol. 4, no. 4, pp. 273-298, Nov. 1986.
[3] H. Bakoglu et al., "The IBM RISC System/6000 Processor: Hardware Overview,"IBM J. Research and Development, Vol. 34, No. 1, Jan. 1990, pp. 12-22.
[4] J.H. Chang, H. Chao, and K. So, "Cache Design of a Sub-Micron CMOS System/370,"Proc. 14th Ann. Int'l Symp. Computer Architecture, No. 776, Computer Society Press, Los Alamitos, Calif., 1987, pp. 208-213.
[5] D.W. Clark, "Cache Performance in the VAX 11/780,"ACM Trans. Computer Systems, Vol. 1, No. 1, Feb. 1983, pp. 24-37.
[6] M. D. Hill, S. J. Eggers, J. R. Larus, G. S. Taylor, G. Adams, B. K. Bose, G.A. Gibson, P. M. Hansen, J. Keller, S. I. Kong, C. G. Lee, D. Lee, J. M. Pendleton, S.A. Ritchie, D. A. Wood, B. G. Zom, P. N. Hilfinger, D. Hodges, R. H. Katz, J. Ousterhout, and D.A. Patterson, "SPUR: A VLSI multiprocessor workstation,"IEEE Comput. Mag., vol. 19, pp. 8-22, Nov. 1986.
[7] M.D. Hill,Aspects of Cache Memory and Instruction Buffer Performance, PhD dissertation, Tech. Report 87/381, Computer Science Dept., Univ. of California, Berkeley, Calif., Nov. 1987.
[8] M. Hill and A. Smith, "Evaluating associativity in CPU caches,"IEEE Trans. Comput., vol. 38, no. 12, pp. 1612-1630, Dec. 1989.
[9] IBM 3033 Processor Complex: Theory of Operation/Diagrams Manual, vol. 4. Poughkeepsie, NY: IBM, 1978.
[10] R. Ibbet and M. Husband, "The MU5 name store,"Comput. J., vol. 20, no. 3, pp. 227-231, Aug. 1977.
[11] R. Lee, "Precision architecture,"IEEE Comput., vol. 22, no. 1, pp. 78-91, Jan. 1989.
[12] J. S. Liptay, "Precision architecture,"IEEE Comput., vol. 22, no. 1, pp. 78-91, Jan. 1989.
[13] B. R. Rau, "Pseudo-randomly interleaved memory,"IEEE Comput.vol. 22, no. 1, pp. 78-91, Jan. 1989.
[14] T. Riordanet al., "System design using the MIPS R3000/3010 RISC Chipset," inProc. 34th IEEE Comput. Soc. Conf., COMPCON'89, Feb. 1989, pp. 494-498.
[15] D. Roberts, T. Layman, and G. Taylor, "An ECL RISC microprocessor designed for two level cache," inProc. Int. Conf. Comput. Design, 1990, pp. 228-231.
[16] A. Smith, "A comparative study of set associative memory mapping algorithms and their use for cache and main memory,"IEEE Trans. Software Eng., pp. 121-130, Mar. 1978.
[17] A. Smith, "Cache Memories,"Computing Surveys, Vol. 14, No. 3, Sept. 1982, pp. 473- 530.
[18] A. J. Smith, "Cache evaluation and the impact of workload choice," inProc. 12th Annu. Symp. Comput. Architecture, Boston, MA, June 1985, pp. 64-73.
[19] A.J. Smith, "Bibliography and Readings on CPU Cache Memories and Related Topics,"Computer Architecture News, Jan. 1986, pp. 22-42.
[20] A. J. Smith, "Line (block) size choice for CPU cache memories,"IEEE Trans. Computers, vol. 36, no. 9, pp. 1063-1074, 1987.
[21] A. Smith, "Second bibliography on cache memories,"Comput. Architecture News, vol. 19, no. 4, pp. 154-182, June 1991.
[22] J. E. Smith and J. R. Goodman, "A study of instruction cache organizations and replacement policies," inProc. 10th Symp. Comput. Architecture, June 1983, pp. 132-137.
[23] K. So and R. Rechtschaffen, "Cache operation by MRU change,"IEEE Trans. Comput., vol. 37, no. 6, pp. 700-709, June 1988.
[24] W. D. Strecker, "Cache memories for PDP-11 family computers," inProc. Third Annu. Conf. Comput. Architecture, 1976, pp. 155- 158.
[25] G. Taylor, P. Davies, and M. Farmwald, "The TLB slice--A low-cost high-speed address translation mechanism," inProc. 17th Int. Symp. Comput. Architecture, May 1990, pp. 355-363.
[26] S. G. Tucker, "The IBM 3090 system: An overview,"IBM Syst. J., vol. 25, no. 1, pp. 4-19, Jan. 1986.
[27] W. -H. Wang, "Multilevel cache hierarchies," Ph.D. Thesis, Tech. Rep. 89-09-13, Dept. of Comput. Sci. Eng., U. of Washington, Sept. 1989.

Index Terms:
cache types; table lookaside buffer; high-performance computer; cache array; index; tag; virtual; real; prediction-based; buffer storage; performance evaluation.
C.E. Wu, Y. Hsu, Y.-H. Liu, "A Quantitative Evaluation of Cache Types for High-Performance Computer Systems," IEEE Transactions on Computers, vol. 42, no. 10, pp. 1154-1162, Oct. 1993, doi:10.1109/12.257701
Usage of this product signifies your acceptance of the Terms of Use.