DOI QR코드

DOI QR Code

An Active Prefetch Filtering Schemes using Exclusive Prefetch Cache

선인출 전용 캐시를 이용한 적극적 선인출 필터링 기법

  • 전영숙 (충북대학교 대학원 컴퓨터과학과) ;
  • 김석일 (충북대학교 전기전자컴퓨터공학부) ;
  • 전중남 (충북대학교 전기전자컴퓨터공학부)
  • Published : 2005.02.01

Abstract

Memory reference instruction caused by cache miss is the critical factor that limits the processing power of processor. Cache prefetching technique is an effective way to reduce the latency due to memory access. However, excessively aggressive prefetch leads to cache pollution and finally to cancel out the advantage of prefetch. In this study, an active prefetch filtering scheme is introduced which dynamically decides whether to commence prefetching after referring a filtering table to reduce the cache pollution due to unnecessary prefetches. For the precision filtering, an evicted address referencing scheme has been proposed where the filter directly compares the current prefetch address with previous unnecessary prefetch addresses stored in filtering table. Moreover, a small sized exclusive prefetch cache has been introduced to increase the amount of eviction of unnecessarily prefetched addresses to enhance the accuracy of dynamic filtering. The exclusive prefetch cache also prevents useful demand data from being pushed out by prefetched data, while the evicted address direct referencing scheme enables the prefetch cache to keep most of useful prefetch data within its small size. Experimental results from commonly used general and multimedia benchmarks show that the average cache miss ratio has been decreased by $13.3{\%}$ by virtue of enhanced filtering accuracy compared with conventional schemes.

캐시 미스에 의한 메모리 참조 명령어는 응용 프로그램의 고속 수행을 방해하는 주 원인이다. 캐시 선인출 기법은 캐시 미스에 따른 지연시간을 줄이는 효과적인 방법이다. 그러나 너무 적극적으로 선인출을 할 경우에는 캐시 오염을 유발시켜 오히려 선인출에 의한 장점을 상쇄시킨다. 본 연구에서는 선인출로 인한 캐시의 오염을 줄이기 위해 필터 테이블을 참조하여 선인출 명령을 수행한 지의 여부를 동적으로 판단하는 적극적 선인출 필터링 기법을 제시한다. 정교한 필터링을 위하여 저장되어 있는 불필요한 선인출 데이터의 주소를 직접 사용하는 축출 주소 참조 방시을 제안하였다. 또한 동적 필터링의 정확성을 늘이기 위하여 선인출 데이터의 캐시로부터의 출입을 증가 시키도록 작은 크기의 선인출 전용 캐시를 사용하였다. 선인출 전용 캐시의 사용으로 인해 유용한 요구 데이터들이 선인출 데이터들로 인하여 밀려나가지 않게 되었고, 또한 직접 주소 참조 방식을 통하여 필터링 정확성이 증가됨으로써 선인출 전용 캐시 내에도 유용한 선인출 데이터들만이 존재하게 되어 캐시 미스 수가 크게 감소되었다. 일반적으로 많이 사용되는 일반 벤치마크 프로그램과 멀티미디어 벤치마크 프로그램들에 대하여 실험한 결과, 제안된 방식의 캐시 미스율은 $13.3{\%}$ 감소하였고,, 기존 방식에 비해 우수한 필터링 정확도를 가짐을 보였다.

Keywords

References

  1. A. J. Smith, 'Cache Memories', ACM Computing Surveys, 14:473-530, Sep., 1982 https://doi.org/10.1145/356887.356892
  2. N. P. Jouppi, 'Improving directed-mapped cache performance by the addition of a small fully-associative cache and prefetch buffers', Proc. of the 17 Annual International Symposium on Computer Architecture, pp.364-373, May, 1990
  3. D. Joseph and D. Grunwald, 'Prefetching Using Markov Predictors', IEEE Trans. on computers, Vol. 48, No.2, Feb., 1999 https://doi.org/10.1109/12.752653
  4. D. Joshep and D. Grunwald, 'Prefetching Using Markov Predictors', in proc. Of the 24th. Annual IntI. Symp. On Computer Architecture, pp.252-263, June, 1997 https://doi.org/10.1145/264107.264207
  5. J. Kim, K. V. Palem and W-F. Wong, 'A Framwork for Data Prefetching using Off-line Training of Markovian Predictors', in Proc. IEEE IntI. Conf. on Computer Design(JCCD), pp.340-347, Sep., 2002 https://doi.org/10.1109/ICCD.2002.1106792
  6. G. Hariprakash, R. Achutharaman, A. R. Omondi, 'DSTRIDE : Data-cache miss-address-based stride prefetching scheme for multimedia processors', 6th Australasian Computer Systems Architecture Conference (AustCSAC'01), pp.62-70, Jan, 29-30, 2001 https://doi.org/10.1109/ACAC.2001.903360
  7. Y. Solihin, J. Lee and J. Torrellas, 'Correlation Prefetching with a User-Level Memory Thread', IEEE Trans. Computers, Vol.14, No.6, June, 2003
  8. J. L. Baer and T-Fu Chen, 'An effective on-chip preloading scheme to reduce data access penalty', In Proceedings of Supercomputing '91, pp.176-186, Nov., 1991 https://doi.org/10.1145/125826.125932
  9. T-Fu Chen and J-L Baer, 'Effective Hardware -Based data prefetching for High-Performance Processors', IEEE Trans. Computers, Vol.44, No.5, pp.609-623, May, 1995 https://doi.org/10.1109/12.381947
  10. V. Srinivasan, E. S. Davidson and G. S. Tyson, 'A Prefetch Taxonomy', IEEE Trans. Computers, Vol.53, No.2, pp.126-140, Feb., 2004 https://doi.org/10.1109/TC.2004.1261824
  11. X. Zhuang and H-H S. Lee, 'Hardware-based Cache Pollution Filtering Mechanism for Aggressive Prefetches', in Proc. IEEE Int. conf. on Parallel Processing, pp.286-293, Oct., 2003 https://doi.org/10.1109/ICPP.2003.1240591
  12. A. Srivastava and A. Eustace, 'ATOM: A System for Building Customized Program Analysis Tools', Proceedings of the ACM SIGPLAN 94, pp.196-205, 1994 https://doi.org/10.1145/178243.178260
  13. M. D. Hill, 'Dinero III Cache Simulator', Technical Report, Department Computer Science, University of Wisconsin, Madison. 1990
  14. J. H. Lee, S. W. Jeong, S. D. Kim and C. C. Weems, 'An Intelligent Cache System with Hardware Prefetching for High Performance', IEEE Trans. on computers, Vol.52, No.5, May, 2003 https://doi.org/10.1109/TC.2003.1197127