본문 바로가기
HOME> 논문 > 논문 검색상세

논문 상세정보

캐쉬 미스와 분기예측 실패를 고려한 명령어 페치 모델의 성능분석
Performance Analyses of Instruction Fetch Models Considering Cache Miss and Branch Misprediction

김선모   ((주)LG 전자 연구원CC0145603  ); 정진하   (인하대학교 전자공학과UU0001092  ); 최상방   (인하대학교 전자전기컴퓨터공학부UU0001092  );
  • 초록

    캐쉬 메모리는 명령어와 데이터의 참조시간을 줄이기 위하여 프로세서에 의해 참조되어질 가능성이 높은 주 메모리의 내용을 일시적으로 저장하는 용량이 작고 빠른 메모리이다. 본 논문에서는 슈퍼스칼라 프로세서에 적용될 수 있는 네 가지 명령어 캐쉬 구조에 대하여 캐쉬 미스와 분기예측 실패를 고려한 해석적 모델을 제안하고 성능을 분석하였다. 슈퍼스칼라 구조의 다양한 파라미터들을 정의하여 명령어 페치를 모델링하였으며, 해석적 모델의 타당성을 검증하기 위하여 시뮬레이션을 수행하여 얻은 결과와 비교하였다. 명령어 페치율에 있어서는 분기예측 실패로 인한 영향보다는 캐쉬 미스로 인한 성능저하가 더욱 큰 것으로 나타났다. 본 연구를 통하여 얻은 해석적 모델을 사용하면 시뮬레이션에서는 드러나지 않는 성능제약의 원인에 대한 명확한 규명이 가능하며, 캐쉬 성능에 있어서 캐쉬 미스와 분기예측 실패간의 관계에 대한 정확한 분석이 가능하다.


    Cache memories are small fast memories used to temporarily hold the contents of main memory that are likely to be referenced by processors so as to reduce instruction and data access time. In this paper, we represent analytical models of instruction fetch process for four types of instruction cache structures that can be used for superscalar processors. In the models, we define various kinds of architectural parameters and take cache miss and branch misprediction into consideration. To prove the correctness of the proposed models, we performed extensive simulations and compared the results with the analytical models. Simulation results showed that the proposed model can estimate the instruction fetch rate accurately within 10% error in most cases. Both analytical model and simulation show that the increase of cache misses reduces the instruction fetch rate more severely than that of branch misprediction does. However, the analytical model can explain the causes of performance degradation which cannot be uncovered by the simulation method only. The model is also able to provide exact relationship between cache miss and branch misprediction for instruction fetch analysis.


  • 참고문헌 (21)

    1. Standard Performance Evaluation Corporation, 'SPEC CPU95 benchmark,' http://www.specbench.org/osg/cpu95/, Mar. 1998 
    2. M.D. Smith, M. Johnson, and M.A. Horowitz, 'Limits on multiple instruction issue,' Proc. Third Int'l Conf. Architectural Support for Programming Languages and Operating Systems, pp. 290-302, Apr. 1989 
    3. T.M. Conte, K.N. Meneszes, P.M. Mills, and B.A. Patel, 'Optimization of instruction fetch mechanisms for high issue rates,' Proc. 22nd Ann. Int'l Symp. Computer Architecture, pp. 333-344, June 1995 
    4. G. Irlam, 'Spa' Personal Communication http://www.base.com/gordoni/spa/cat1/spy.1, 1995 
    5. T.Y. Yeh, D.T. Marr, and Y.N. Patt, 'Increasing the instruction fetch rate via multiple branch prediction and a branch address cache,' Proc. Seventh ACM Int'l Conf. Supercomputing, pp. 67-76, Tokyo, July 1993 
    6. S. Wallace and N. Bagherzadeh, 'Modeled and measured instruction fetching performance for superscalar microprocessors,' IEEE Trans. Parallel and Distributed Systems, vol. 9, no. 6, pp. 570-578, June 1998 
    7. K.S. McKinley and O. Temam, 'A quantitative analysis of loop nest locality,' Proc. Seventh Conf. Architectural Support for Programming Languages and Operating Systems, vol. 7, Oct. 1996 
    8. M.E. Wolf and M.S. Lam, 'A data locality optimizing algorithm,' Proc. SIGPLAN '91 Conf. Programming Language Design and Implementation, vol. 26, pp. 30-44, June 1991 
    9. J.S. Harper, D.J. Kerbyson, and G.R. Nudd, 'Analytical modeling of set-associative cache behavior,' IEEE Trans. on Computers, vol. 48, no. 10, pp. 1009-1023, Oct. 1999 
    10. S. Ghost, M. Martonosi, and S. Malik, 'Cache miss equations: An analytical representation of cache misses,' Proc. 11th ACM Int'l Conf. Supercomputing, Vienna, Austria, July 1997 
    11. M.S. Lam, E.E. Rothberg, and M.E. Wolf, 'The cache performance and optimizations of blocked algorithms,' Proc. Fourth Int'l Conf. Architectural Support for Programming Languages and Operating Systems, pp. 63-74, Santa Clara, Calif., 1991 
    12. C. Fricker, O. Temam, and W. Jalby, 'Influence of cross interferences on blocked loops: A case study with matrix-vector multiply,' ACM Trans. Programming Languages and Systems, vol. 17, no. 4, pp. 561-575, July 1995 
    13. A. Agarwal, M. Horowitz, and J. Hennessy, 'An analytical cache model,' ACM Trans. Computer Systems, vol. 7, no. 2, pp. 184-215, May 1989 
    14. S. Coleman and K.S. McKinley, 'Tile size selection using cache organization and data layout,' Proc. SIGPLAN '95 Conf. Programming Language Design and Implementation, vol. 30, pp. 279-289, June 1995 
    15. T. Fahringer, 'Automatic cache performance prediction in a parallelizing computer,' Proc. AICA '93-International Section, Sept. 1993 
    16. R.A. Uhlig and T.N. Mudge, 'Trace-driven memory simulation: A survey,' ACM Computing Surveys, vol. 29, no. 2, pp. 129-170, June 1997 
    17. H.J. Kim, S.M. Kim, and S.B. Choi, 'System performance analyses of out-of-order superscalar processors using analytical method,' IEICE Trans. Fundamentals of Electronics Communications and Computer Sciences, vol. E82-A, no. 6, pp. 927-938. June 1999 
    18. F. Bodin and A. Seznec, 'Skewed associativity improves program performance and enhnces predictability,' IEEE Trans. Computers, vol. 46, no.5, pp. 530-544, May 1997 
    19. O. Temam, C. Fricker, and W. Jalby, 'Cache interference phenomena,' Proc. ACM SIGMETRICS, pp. 261-271, 1994 
    20. J.L. Hennessy and D.A. Patterson, 'Computer architecture: A quantitative approach,' Morgan Kaufmann Publishers, 2nd Ed. 1996 
    21. M. Johnson, Superscalar microprocessor design, Englewood Cliffs, N. J.: Prentice Hall, 1991 

 저자의 다른 논문

  • 정진하 (11)

    1. 2001 "네트워크 기반 클러스터 시스템을 위한 적응형 동적 부하균등 방법" 정보과학회논문지. Journal of KIISE. 시스템 및 이론 28 (11): 549~560    
    2. 2002 "SNMP 기반 네트워크관리를 위한 적응형 네트워크 모니터링 방법" 한국통신학회논문지. The Journal of Korea Information and Communications Society. 통신이론 및 시스템 27 (c12): 1265~1275    
    3. 2004 "멀티미디어 데이터를 위한 피어-투-피어 전송모델" 한국통신학회논문지. The Journal of Korea Information and Communications Society. 네트워크 및 서비스 29 (b7): 598~612    
    4. 2005 "무선 환경에서 병렬 서버를 위한 멀티미디어 전송 및 동기화 기법" 한국통신학회논문지. The Journal of Korea Information and Communications Society. 네트워크 및 서비스 30 (b7): 469~480    
    5. 2006 "서비스 통합 시스템에서 지그비를 이용한 유비쿼터스 헬스케어 시스템의 설계 및 구현" 電子工學會論文誌. Journal of the Institute of Electronics Engineers of Korea. TC, 통신 43 (11): 16~24    
    6. 2008 "저주파/고주파와 냉자극을 이용한 의료용 조합 자극기의 설계 및 구현" Journal of biomedical engineering research : the official journal of the Korean Society of Medical & Biological Engineering 29 (1): 82~87    
    7. 2008 "이질 시스템에서 통신 시간을 고려한 효율적인 복제 기반 태스크 스케줄링" 한국통신학회논문지. The Journal of Korea Information and Communications Society. 통신이론 및 시스템 33 (c3): 219~233    
    8. 2008 "SIMD 프로그래머블 셰이더를 위한 멀티포트 레지스터 파일 설계 및 구현" 電子工學會論文誌. Journal of the Institute of Electronics Engineers of Korea. SD, 반도체 45 (9): 85~95    
    9. 2010 "벡터화된 SIMD 프로그램어블 통합 셰이더를 위한 특수 함수 유닛 설계" 電子工學會論文誌. Journal of the Institute of Electronics Engineers of Korea. SD, 반도체 47 (5): 56~70    
    10. 2011 "SIMD 프로그래머블 통합 셰이더를 위한 제어 유닛 설계 및 구현" 電子工學會論文誌. Journal of the Institute of Electronics Engineers of Korea. SD, 반도체 48 (7): 37~47    
  • 최상방 (52)

 활용도 분석

  • 상세보기

    amChart 영역
  • 원문보기

    amChart 영역

원문보기

무료다운로드
  • NDSL :
유료다운로드

유료 다운로드의 경우 해당 사이트의 정책에 따라 신규 회원가입, 로그인, 유료 구매 등이 필요할 수 있습니다. 해당 사이트에서 발생하는 귀하의 모든 정보활동은 NDSL의 서비스 정책과 무관합니다.

원문복사신청을 하시면, 일부 해외 인쇄학술지의 경우 외국학술지지원센터(FRIC)에서
무료 원문복사 서비스를 제공합니다.

NDSL에서는 해당 원문을 복사서비스하고 있습니다. 위의 원문복사신청 또는 장바구니 담기를 통하여 원문복사서비스 이용이 가능합니다.

이 논문과 함께 출판된 논문 + 더보기