• 제목/요약/키워드: Branch Prediction

검색결과 166건 처리시간 0.02초

간접 분기의 타형태 타겟 주소의 정확한 예측 (Accurate Prediction of Polymorphic Indirect Branch Target)

  • 백경호;김은성
    • 전자공학회논문지CI
    • /
    • 제41권6호
    • /
    • pp.1-11
    • /
    • 2004
  • 현대적인 프로세서들은 그 성능을 높이기 위해서 분기 예측과 같은 투기적인 방식으로 가용한 ILP 즉 명령어 수준의 병렬성을 추구한다. 전통적으로, 분기 방향은 2-단계 예측기를 사용하여 아주 높은 비율의 정확도로 예측이 가능하고, 분기 타겟 주소는 BTB를 사용하여 예측한다. 간접 분기를 제외한 모든 분기들은 그 자신의 타겟 주소가 유일하기 때문에 BTB로 거의 정확하게 예측되지만, 간접 분기는 그 타겟 주소가 동적으로 수시로 달라지기 때문에 예측하기가 매우 어렵다. 일반적으로, 분기 방향을 예측하는 기술을 간접 분기의 타겟 주소를 예측하는데 적용하여 전통적인 BTB 보다 훨씬 좋은 정확도를 얻고 있다. 본 논문에서는 간접 분기 명령과 이와 데이터 종속적인 관계를 갖고 있는 이 간접 분기 명령 보다 훨씬 앞서 수행되는 명령어의 레지스터 내용을 결합하여 간접 분기의 타겟을 예측하는 전혀 새로운 방법을 제안한다. 제안된 방식의 효율성을 검증하기 위해 심플스칼라 시뮬레이터 상에서 제안된 예측기를 구현하고 SPEC 벤치마크를 시뮬레이션하여, 수시로 바뀌는 간접분기의 타겟을 거의 완벽하게 예측할 수 있음을 보이고, 기존의 다른 어떤 방법보다도 우수한 결과임을 보인다.

분기 명령어의 조기 예측을 통한 예측지연시간 문제 해결 (Early Start Branch Prediction to Resolve Prediction Delay)

  • 곽종욱;김주환
    • 정보처리학회논문지A
    • /
    • 제16A권5호
    • /
    • pp.347-356
    • /
    • 2009
  • 정교한 분기 예측기의 설계는 오늘날의 프로세서 성능 향상에 중요한 역할을 하게 되었다. 분기 예측의 정확도가 더욱 더 중요해 지면서 정확도의 향상을 위한 다수의 기법들이 제안되었지만, 기존의 연구들은 예측 지연 시간을 간과하는 경향이 있었다. 본 논문에서는 예측 지연 시간 문제를 해결하고자 조기 예측 기법 (ESP, Early Start Prediction)을 제안한다. 조기 예측 기법은 분기 예측에 있어서 활용되는 분기 명령어의 주소 대신 그것과 일대일 대응이 되는 기본 블록의 시작 주소 (BB_SA, Basic Block Start Address)를 이용한다. 즉, 분기 명령어의 주소가 사용되는 기존의 환경에서, BB_SA를 활용하여 조기 예측을 시작함으로써, 예측 지연 시간을 숨긴다. 또한 제안된 기법은 짧은 간격 숨김 기법(short interval hiding technique)을 통해 보다 더 나은 성능 향상을 기대할 수 있다. 실험 결과 본 논문에서 제안된 기법은 예측 지연 시간을 줄임으로써, 예측 지연 시간이 1 사이클인 이상적인 분기 예측기의 성능에 0.25% 이내로 근접한 IPC 결과를 얻었다. 또한 기본 블록의 시작주소와 분기 명령어 사이에 짧은 간격을 가질 경우에 대한 개선 방법을 추가적으로 적용시킬 경우, 기존의 방식과 비교하여 평균 4.2%, 최대 10.1%의 IPC 향상을 가져왔다.

슈퍼스칼라 프로세서를 위한 고성능 하이브리드 동적 분기 예측 (Hybrid Dynamic Branch Prediction to Reduce Destructive Aliasing)

  • Park, Jongsu
    • 한국정보통신학회논문지
    • /
    • 제23권12호
    • /
    • pp.1734-1737
    • /
    • 2019
  • This paper presents a prediction structure with a Hybrid Dynamic Branch Prediction (HDBP) scheme which decreases the number of stalls. In the application, a branch history register is dynamically adjusted to produce more unique index values of pattern history table (PHT). The number of stalls is also reduced by using the modified gshare predictor with a long history register folding scheme. The aliasing rate decreased to 44.1% and the miss prediction rate decreased to 19.06% on average compared with the gshare branch predictor, one of the most popular two-level branch predictors. Moreover, Compared with the gshare, an average improvement of 1.28% instructions per cycle (IPC) was achieved. Thus, with regard to the accuracy of branch prediction, the HDBP is remarkably useful in boosting the overall performance of the superscalar processor.

세트 연관 캐쉬를 사용한 2단계 적응적 분기 예측 (2-Level Adaptive Branch Prediction Based on Set-Associative Cache)

  • 심원
    • 정보처리학회논문지A
    • /
    • 제9A권4호
    • /
    • pp.497-502
    • /
    • 2002
  • 조건부 분기 명령어는 분기 벌칙을 야기함으로써 명령어 수준의 병렬도 향상에 제약을 가한다. 고성능 슈퍼스칼라 프로세서의 등장으로 인해, 정확한 분기 예측의 중요성은 더욱 높아지고, 이를 위해 동적 분기 예측의 일종인 2단계 적응적 분기 예측(2-level adaptive branch prediction) 방식이 개발되었다. 그러나 2단계 적응적 분기 예측이 상당히 높은 예측 정확도를 보여주고 있음에도 불구하고, 정확도에 따른 비용이 기하급수적으로 증가하는 등의 문제점을 가지고 있다. 본 논문에서는 2단계 적응적 분기 예측의 이러한 문제점을 개선하기 위하여 세트 연관 캐쉬를 이용한 캐쉬 상관 분기 예측기(cached correlated branch predictor)를 제안하고, 기존의 방식에 비해 예측의 정확도는 증가하고, 비용은 줄어든 것을 시뮬레이션을 통하여 확인한다. 세트 연관 예측기의 경우 전역과 지역 방식의 가장 좋은 예측 실패율은 각각 5.99%, 6.28%이며, 이는 종래의 2단계 적응적 분기 예측 방식에서의 가장 좋은 결과인 9.23%, 7.35%에 비해 각각 54%, 17% 향상된 결과이다.

농림수산식품분야 정보처리를 위한 적응하는 분기히스토리 길이를 갖는 분기예측 메커니즘 (A Branch Prediction Mechanism With Adaptive Branch History Length for FAFF Information Processing)

  • 고광현;조영일
    • 현장농수산연구지
    • /
    • 제13권1호
    • /
    • pp.3-17
    • /
    • 2011
  • Pipelines of processor have been growing deeper and issue widths wider over the years. If this trend continues, branch misprediction penalty will become very high. Branch misprediction is the single most significant performance limiter for improving processor performance using deeper pipelining. Therefore, more accurate branch predictor becomes an essential part of modem processors for FAFF(Food, Agriculture, Forestry, Fisheries)Information Processing. In this paper, we propose a branch prediction mechanism, using variable length history, which predicts using a bank having higher prediction accuracy among predictions from five banks. Bank 0 is a bimodal predictor which is indexed with the 12 least significant bits of the branch PC. Banks 1,2,3 and 4 are predictors which are indexed with different global history bits and the branch PC. In simulation results, the proposed mechanism outperforms gshare predictors using fixed history length of 12 and 13, up to 6.34% in prediction accuracy. Furthermore, the proposed mechanism outperforms gshare predictors using best history lengths for benchmarks, up to 2.3% in prediction accuracy.

동적 분기 예측을 지원하는 임베디드 코어 자동 생성 시스템의 설계와 구현 (Design and Implementation of an Automatic Embedded Core Generation System Using Advanced Dynamic Branch Prediction)

  • 이현철;황선영
    • 한국통신학회논문지
    • /
    • 제38B권1호
    • /
    • pp.10-17
    • /
    • 2013
  • 본 논문은 분기 예측을 지원하는 임베디드 코어 자동 생성 시스템을 제안한다. 제안된 시스템은 동적 분기 예측모듈에 히스토리/분기방향 flag가 추가된 BTAC(Branch Target Address Cache)를 포함하여 타겟 어플리케이션의 수행 속도를 향상 시킬 수 있도록 하였다. 시뮬레이션으로부터 해당 어플리케이션의 분기 정보를 추출하고 이를 토대로 BHT(Branch History Table)와 BTAC의 entry를 결정한다. 제안된 분기 예측의 효율성을 검증하기 위해서 동적 분기 예측 모듈을 포함하는 ARM9TDMI 코어를 SMDL로 기술하고 코어를 생성하였다. 실험 결과는 entry의 수에 따라 면적은 60%까지 증가하였고 어플리케이션의 수행 사이클과 BTAC의 miss rate는 평균 1.7%, 9.6%씩 감소하였다.

분기 선예측과 개선된 BTB 구조를 사용한 분기 예측 지연시간 은폐 기법 (Branch Prediction Latency Hiding Scheme using Branch Pre-Prediction and Modified BTB)

  • 김주환;곽종욱;전주식
    • 한국컴퓨터정보학회논문지
    • /
    • 제14권10호
    • /
    • pp.1-10
    • /
    • 2009
  • 현대의 프로세서 아키텍처에서 정확한 분기 예측은 시스템의 성능에 지대한 영향을 끼친다. 최근의 연구들은 예측 정확도뿐만 아니라, 예측 지연시간 또한 성능에 막대한 영향을 끼친다는 것을 보여준다. 하지만, 예측 지연시간은 간과되는 경향이 있다. 본 논문에서는 분기 예측지연시간을 극복하기 위한 분기 선예측 기법을 제안한다. 이 기법은 분기장치를 인출 단계에서 분리함으로써, 분기 예측기가 명령어 인출 장치로부터의 아무런 정보도 없이 스스로 분기 예측을 진행 가능하게 한다. 또한, 제안된 기법을 지원하기 위해, BTB의 구조를 새롭게 개선하였다. 실험 결과는 제안된 기법이 동일한수준의 분기 예측정확도를 유지하면서, 대부분의 예측지연시간을 은폐한다는 것을 보여준다. 더욱이 제안된 기법은 항상 1 싸이클의 예측 지연시간을 가지는 이상적인 분기 예측기를 사용한 경우보다도 더 나은 성능을 보여준다. 본 논문의 실험 결과에 따르면, 기존의 방식과 비교했을 때, 최대 11.92% 평균 5.15%의 IPC 향상을 가져온다.

명령어 연관성 분석을 통한 가변 입력 gshare 예측기 (Variable Input Gshare Predictor based on Interrelationship Analysis of Instructions)

  • 곽종욱
    • 한국컴퓨터정보학회논문지
    • /
    • 제13권4호
    • /
    • pp.19-30
    • /
    • 2008
  • 분기 히스토리는 분기 예측기의 주된 입력 요소로 사용된다. 따라서 적절한 분기 히스토리의 사용은 분기 예측의 정확도 향상에 큰 영향을 미친다. 본 논문에서는 분기 예측의 정확도를 향상시키기 위한 방법의 하나로, 명령어의 연관성 분석을 통한 선별적 분기 히스토리 사용 기법을 제안한다. 우선, 본 논문에서는 명령어의 연관성을 분석하는 세 가지 서로 다른 알고리즘을 제안한다. 제안된 기법은 명령어의 레지스터 쓰기 연산에 기반하는 방법, 분기 명령어의 참조 레지스터에 기반하는 방법, 그리고 이들 두 가지 방식을 상호 결합하는 방법이다. 또한, 제안된 세 가지 알고리즘의 실질적 구현을 위해 이를 적용할 수 있는 가변 입력 gshare 예측기를 제안한다. 본 논문에서는 모의실험을 통해 세 가지 알고리즘의 특징 및 장단점을 비교 분석한다. 특히, 기존의 고정된 입력을 사용하는 방식과 비교하여 제안된 기법의 성능 향상의 정도를 분석하며, 사전 프로파일링을 통해 얻어진 최적의 입력에 대한 성능상의 차이도 소개한다.

  • PDF

정확하고 효율적인 간접 분기 예측기 설계 (Design of Accurate and Efficient Indirect Branch Predictor)

  • 백경호;김은성
    • 대한전자공학회:학술대회논문집
    • /
    • 대한전자공학회 2005년도 추계종합학술대회
    • /
    • pp.1083-1086
    • /
    • 2005
  • Modern superscalar processors exploit Instruction Level Parallelism to achieve high performance by speculative techniques such as branch prediction. The indirect branch target prediction is very difficult compared to the prediction of direct branch target and branch direction, since it has dynamically polymorphic target. We present a accurate and hardware-efficient indirect branch target predictor. It can reduce the tags which has to be stored in the Indirect Branch Target Cache without a sacrifice of the prediction accuracy. We implement the proposed scheme on SimpleScalar and show the efficiency running SPEC95 benchmarks.

  • PDF

패턴/패스 통합 분기 예측 전략의 성능 분석 (Performance Analysis of Pattern/Path Hybrid Branch Prediction Strategy)

  • 조경산
    • 한국시뮬레이션학회논문지
    • /
    • 제8권3호
    • /
    • pp.17-28
    • /
    • 1999
  • Recently studies have shown that conditional branches can be accurately predicted by recording the path leading up to the branch. But path predictors are more complex and uncompatible with existing pattern branch predictors. In order to solve these problems, we propose a simple path branch predictor(SPBP) that hashes together two most recent branch instruction addresses. In addition, we propose a pattern/path hybrid branch predictor composed of the SPBP and existing pattern branch predictors. Through the trace-driven simulation of six benchmark programs, the performance improvement by the proposed pattern/path hybrid branch prediction is analysed and validated. The proposed predictor can improve the prediction accuracy from 94.21% to 95.03%.

  • PDF