DOI QR코드

DOI QR Code

스트리밍 데이터의 선인출에 사용되는 참조예측표의 스칼라 우선 교체 전략

Scalar First Replacement Strategy for Reference Prediction Table Used in Prefetching Streaming Data

  • 임철후 (충북대학교 대학원 컴퓨터과학과) ;
  • 전영숙 (충북대학교 대학원 컴퓨터과학) ;
  • 김석일 (충북대학교 컴퓨터과학) ;
  • 전중남 (충북대학교 전기전자컴퓨터공학부)
  • 발행 : 2004.06.01

초록

멀티미디어 응용프로그램의 데이터는 주소 간격이 일정한 스트리밍 패턴으로 참조되는 특성이 있다. 이러한 특성을 선인출방법에 적용하여 멀티미디어 응용프로그램의 수행속도를 향상시킬 수 있다. 참조예측표에 의한 선인출방법은 메모리 참조명령어의 과거 기록을 이용하여 규칙적으로 참조되는 메모리주소를 예측한다. 이 논문은 참조예측표를 사용하는 하드웨어 기반의 규칙 선인출방법에서 효율적인 참조예측표 운영방법을 제안한다. 참조예측표에 입력되는 메모리 참조명령어는 스칼라데이터 참조명령어와 스트리밍데이터 참조명령어로 구성된다. 스칼라데이터 참조명령어는 선인출에 사용되지 않으므로 스칼라데이터 참조명령어를 우선적으로 교체함으로서, 참조예측표를 효과적으로 사용할 수 있다. 이방법은 기존 FIFO 방법과 비교할 때, 선인출에 사용되는 스트리밍데이터 참조명령어를 참조예측표에 더 오래 유지함으로써, 선인출 성능이 향상된다.

Multimedia applications tend to access their data as a streaming pattern with regular intervals. This characteristic can be utilized in prefetching the multimedia data into cache memory so as to reduce their execution speeds. The reference-prediction prefetch algorithm predicts the memory address that seems to be used in the next time based on the previous history of memory references stored in the prediction reference table. This paper proposes a strategy to manipulate the reference prediction table which contains all of the data reference instructions to scalar and streaming data. We have recognized that the scalar reference instructions do not contribute to the data prefetching algorithm. Therefore, when replacing an element in the reference prediction table, the proposed algorithm preferentially selects the scalar reference instruction before the stream reference instruction. It makes the stream reference instruction to stay for a long time compared to the FIFO replacement policy, and eventually improves the performance of data prefetching.

키워드

참고문헌

  1. J. Fritts, 'Multi-Level Memory Prefetching for Media and Streaming Processing,' Proceedings of International Conference on Multimedia and Expo, 2002 https://doi.org/10.1109/ICME.2002.1035522
  2. S. P. VanderWiel, D. J. Lilja, 'When Caches Aren't Enough : Data Prefetching Techniques,' IEEE Computer, pp.23-20, July, 1997 https://doi.org/10.1109/2.596622
  3. M. E. Wolf and M. S. Lan, 'A Data Locality Optimizing Algorithm,' Proceedings of SIGPLAN '91 Conference on Programming Language Design and Implementation, pp.30-44, June, 1991 https://doi.org/10.1145/113445.113449
  4. C. K. Luk, Optimizing the Cache Performance of Non_Numeric Applications, Ph. D. Thesis, University of Toronto, 2000
  5. T. F. Chen and J. L. Baer, 'Effective Hardware - Based Data Prefetching for High Performance Processors,' IEEE Transactions on Computer, Vol.44, No.5, pp.609-623, May, 1995 https://doi.org/10.1109/12.381947
  6. A. Srivastava and A. Eusrace, '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
  7. M. D. Hill, Dinero III Cache Simulator, Technical Report, Computer Sciences Department, University of Wisconsin, Madison, 1990
  8. C. Lee, M. Potkon and W. H. Mangione-Smith, 'Media Bench A Tool for Evaluating and Synthesizing Multi-media Communications Systems,' Proceedings of the 30th Annual international Symposium on Micro architecture, December, 1997
  9. C. H. Chi and K. K. Fang, 'Compiler Driven Data Cache Prefetching for High Performance Computer,' Proceedings of the Regional 10th Annual International Conference, Vol.2, No.9, pp.274-278, August, 1994
  10. S. Palacharla and R. Kessler, 'Evaluating Stream Buffers as a Secondary Cache Replacement,' Proc. 21st Int'l Symp. Computer Architecture, pp.24-33, Apr., 1994 https://doi.org/10.1145/191995.192014
  11. N. P. Jooppi, 'Improving Direct-mapped Cache Performance by the Addition of a Small Fully associative Cache and Prefetch Buffers,' Proceedings of 7th Annual International Symposium on Computer Architecture, pp.364-373, May, 1990 https://doi.org/10.1145/325164.325162
  12. A. Smith, 'Sequential Program Pretetching in Memory Hierarchies,' IEEE Computer, Vol.11, No.2, pp.7-21, 1978
  13. C. Basoglu, W. Lee and J. S. O'Donnell, 'The MAP1000A VLIW mediaprocessor,' IEEE Micro, Vol.20, No.2, pp.48-59, March, 2000 https://doi.org/10.1109/40.848472
  14. K. K. Chan, C. C. Hay, J. H. Keller, G. P. Kurpanek, F. X. Schumacher and J. Zheng, 'Design of the HP PA 7200 CPU,' Hewlett-Packard Journal, Vol.47, No.1, pp.25-33, February, 1996
  15. P. Ranganathan, V. S. Pai, H. Abdel-Shafi, S. V. Adve, 'The interaction of Software Prefetching with ILP Processors in Shared-Memory Systems,' ACM SIGARCH Computer Architecture News, Vol.25, No.2, pp.144-156, May, 1997 https://doi.org/10.1145/384286.264158
  16. D. Joseph, 'Prefetching using Markov Predictors,' Computer Architecture, 1997. Conference Proceedings, The 24th Annual International Symposium on, pp.252-263, June, 1997 https://doi.org/10.1145/264107.264207
  17. Y. Solihin, J. Lee, J. Torrellas, 'Correlation prefetching with a user-level memory thread,' Parallel and Distributed Systems, IEEE Transactions on, Vol.14, Issue 6, pp.563-580, June, 2003 https://doi.org/10.1109/TPDS.2003.1206504