Dual Cache System Based on the Locality Decision Mechanism

지역성 결정 메커니즘을 기반으로 한 이중 캐쉬 시스템

  • 이정훈 (연세대학교 컴퓨터과학과) ;
  • 이장수 (연세대학교 컴퓨터과학과) ;
  • 김신덕 (연세대학교 컴퓨터과학과)
  • Published : 2000.11.01

Abstract

캐쉬의 성능을 향상시키는 가장 효과적인 방법은 프로그램 수행 특성에 내재되어 있는 시간적 (temporal locality) -공간적 지역성 (spatial locality)을 활용하는 것이다. 본 논문에서는 추가적인 장치나 컴파일러의 도움 없이 단지 캐쉬의 구조적인 특징과 간단한 메커니즘만을 이용하여 두 가지 타입의 지역성을 효과적으로 반영할 수 있는 새로운 캐쉬 시스템이 제안된다. 제안하는 새로운 캐쉬 시스템은 다른 블록 크기와 다른 연관도를 가지는 두 개의 캐쉬로써 구성되어 진다. 즉 작은 블록 크기를 지원하는 직접사상 캐쉬 (direct-mapped cache)와 큰 블록을 지원하는 완전 연관 버퍼 (fully-associative buffer)로 구성되어 진다. 큰 블록은 여러 개의 작은 블록으로 구성되어지며 두 캐쉬에서 접근 실패가 발생할 경우 직접사상 캐쉬의 접근 실패가 발생한 작은 블록과 그 이웃 작은 블록을 완전 연관 버퍼에 저장시킴으로써 한번 참조가 일어난 블록의 이웃 블록이 참조될 확률이 높다는 공간적 지역성의 특성을 효과적으로 반영할 수 있다. 또한 참조가 일어난 블록은 제어 비트를 사용하여 선택적으로 작은 블록을 직접사상 캐쉬에 저장함으로써 시간적 지역성을 보다 효과적으로 사용할 수 있다 시뮬레이션 결과에 따르면 기존의 직접사상 캐쉬의 4배 크기보다도 좋은 성능 향상을 보이고 있으며, 동일한 크기의 victim 캐쉬보다 우수한 성능을 보이고 소비 전력 면에서는 5% 정도의 전력 감소를 보이고 있다.

Keywords

References

  1. F. Jesus Sanchez, Antonio Gonzalez and Mateo Valero, Static Locality Analysis for Cache Management, Technical-report UPC-DAC-1997-28
  2. A. J. Smith, Cache Memories, ACM Computing Surveys, Vol.14, No3, pp.473-530, Sep. 1982
  3. C. Su, and A.Despain, Cache Design Tradeoffs for Power and Performance Optimization: A Case study, ACM/IEEE International Symposium on Low-Power Design, pp. 63-68, Dana Point, CA, 1996 https://doi.org/10.1145/224081.224093
  4. J. Kin, M. Gupta, and W. H. Mangione-Smith, The Filter Cache: An Energy Efficient Memory Structure, MICRO-97: ACM/IEEE International Symposium on Microarchitecture, pp. 184-193, Research Triangle Park, NC, Dec. 1997 https://doi.org/10.1109/MICRO.1997.645809
  5. V. Milutinovic, M. Tomasevic, B. Markovic, M. Tremblay, The Split Temporal/Spatial Cache: Initial Performance Analysis, SCIzzL-5, Mar. 1996
  6. A. Gonzalez, C. Aliagas and M. Mateo, Data Cache with Multiple Caching Strategies Tuned to Different Types of Locality, Supercomputing '95, pp. 338-347, July 1995 https://doi.org/10.1145/224538.224622
  7. G. Kupanchek et al, PA-7200: A PA-RISC Processor with Integrated High Performance MP Bus Interface, COMPCON Digest of Papers, pp. 375-382, Feb. 1994
  8. James E. Bennett, and Michael J. Flynn, Prediction Caches for Superscalar Processors, Proceedings of the 30th Annual Int'l Symposium on Micro-architecture, pp. 81-90, Nov. 1997 https://doi.org/10.1109/MICRO.1997.645800
  9. Jude A. Rivers, and Edward S. Davidson, Reducing Conficts in Direct-Mapped Caches with a Temporality-Based Design, Proceedings of the 1996 International Conference on Parallel Processing, Vol. 1, pp. 151-162, Aug. 1996 https://doi.org/10.1109/ICPP.1996.537156
  10. T. Ball and J. R. Larus, Optimally profiling and tracing programs, ACM Trans. on Programming Languages and Systems, Vol. 16, No. 4, pp. 1319-1360, July 1994 https://doi.org/10.1145/183432.183527
  11. Johannes M. Mulder, N.T. Quach, and Michel J. Flynn, An Area Model for On-chip Memories and its Applications, IEEE journal of solid state Circuits, 26(2) pp. 98-106, Feb. 1991 https://doi.org/10.1109/4.68123
  12. S. J. E. Wilton, and N. Jouppi, An Enhanced Access and Cycle Time Model for On-Chip Caches, Digital WRL Research Report 93/5, July 1994
  13. M. B. Kamble, and K. Ghose, Energy-Efficiency of VLSI Cache: A Comparative Study, in Proc. IEEE 10-th Intl. Conf. On VLSI Design, pp. 261-267, Jan. 1997 https://doi.org/10.1109/ICVD.1997.568087
  14. M. B. Kamble, and K. Ghose, Analytical Energy Dissipation Models for Low Power Caches, ACM/IEEE International symposium on Low-Power Electronics and Design, Aug. 1997