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

검색결과 51건 처리시간 0.024초

Design of a G-Share Branch Predictor for EISC Processor

  • Kim, InSik;Jun, JaeYung;Na, Yeoul;Kim, Seon Wook
    • IEIE Transactions on Smart Processing and Computing
    • /
    • 제4권5호
    • /
    • pp.366-370
    • /
    • 2015
  • This paper proposes a method for improving a branch predictor for the extendable instruction set computer (EISC) processor. The original EISC branch predictor has several shortcomings: a small branch target buffer, absence of a global history, a one-bit local branch history, and unsupported prediction of branches following LERI, which is a special instruction to extend an immediate value. We adopt a G-share branch predictor and eliminate the existing shortcomings. We verified the new branch predictor on a field-programmable gate array with the Dhrystone benchmark. The newly proposed EISC branch predictor also accomplishes higher branch prediction accuracy than a conventional branch predictor.

퍼셉트론을 이용한 다중 분기 예측법 (The Multiple Branch Predictor Using Perceptrons)

  • 이종복
    • 전기학회논문지
    • /
    • 제58권3호
    • /
    • pp.621-626
    • /
    • 2009
  • This paper presents a multiple branch predictor using perceptrons. The key idea is to apply neural networks to the multiple branch predictor. We describe our design and evaluate it with the SPEC 2000 integer benchmarks. Our predictor achieves increased accuracy than the Bi-Mode and the YAGS multiple branch predictor with the same hardware cost.

4-Way 캐쉬의 선택된 Element를 이용한 향상된 동적 분기 예측기 구현 (An Improved Dynamic Branch Predictor by Selective Access of a Specific Element in 4-Way Cache)

  • 황인성;황선영
    • 한국통신학회논문지
    • /
    • 제38A권12호
    • /
    • pp.1094-1101
    • /
    • 2013
  • 본 논문은 4-Way 캐쉬의 선택된 element만을 사용하여 어플리케이션 수행 사이클을 줄인 향상된 동적 분기 예측기를 제안한다. 제안된 동적 분기 예측기는 분기명령어가 페치되면 MRU 버퍼를 참조하여 4-Way 캐쉬의 선택된 element에서 타깃 주소를 얻으므로, 모든 element에 접근하는 기존의 동적 분기 예측기보다 제한된 전력하에서 BTAC entry 수를 증가시킬 수 있어 분기 예측 성공률과 어플리케이션의 수행속도가 상당히 향상된다. 제안된 동적 분기 예측기의 효율성을 SMDL 시스템에 의해 생성된 코어가 벤치마크 어플리케이션을 수행하여 검증한다. 실험결과 동적 분기 예측기가 없는 코어에 비해 생성된 코어의 어플리케이션 수행 사이클은 평균 10.1% 감소하고 어플리케이션의 전력소모는 7.4% 증가한다. 기존 동적 분기 예측기를 사용하는 코어에 비해 수행 사이클은 평균 4.1% 줄어든다.

퍼셉트론을 이용하는 멀티코어 프로세서의 성능 연구 (A Performance Study of Multi-Core Processors with Perceptrons)

  • 이종복
    • 전기학회논문지
    • /
    • 제63권12호
    • /
    • pp.1704-1709
    • /
    • 2014
  • In order to increase the performance of multi-core system processor architectures, the multi-thread branch predictor which speculatively fetches and allocates threads to each core should be highly accurate. In this paper, the perceptron based multi-thread branch predictor is proposed for the multi-core processor architectures. Using SPEC 2000 benchmarks as input, the trace-driven simulation has been performed for the 2 to 16-core architectures employing perceptron multi-thread branch predictor extensively. Its performance is compared with the architecture which utilizes the two-level adaptive multi-thread branch predictor.

농업정보기술을 위한 ILP 프로세서에서 새로운 복구 메커니즘 적용 분기예측기 (A Branch Predictor with New Recovery Mechanism in ILP Processors for Agriculture Information Technology)

  • 고광현;조영일
    • Agribusiness and Information Management
    • /
    • 제1권2호
    • /
    • pp.43-60
    • /
    • 2009
  • To improve the performance of wide-issue superscalar processors, it is essential to increase the width of instruction fetch and the issue rate. Removal of control hazard has been put forward as a significant new source of instruction-level parallelism for superscalar processors and the conditional branch prediction is an important technique for improving processor performance. Branch mispredictions, however, waste a large number of cycles, inhibit out-of-order execution, and waste electric power on mis-speculated instructions. Hence, the branch predictor with higher accuracy is necessary for good processor performance. In global-history-based predictors like gshare and GAg, many mispredictions come from commit update of the branch history. Some works on this subject have discussed the need for speculative update of the history and recovery mechanisms for branch mispredictions. In this paper, we present a new mechanism for recovering the branch history after a misprediction. The proposed mechanism adds an age_counter to the original predictor and doubles the size of the branch history register. The age_counter counts the number of outstanding branches and uses it to recover the branch history register. Simulation results on the SimpleScalar 3.0/PISA tool set and the SPECINT95 benchmarks show that gshare and GAg with the proposed recovery mechanism improved the average prediction accuracy by 2.14% and 9.21%, respectively and the average IPC by 8.75% and 18.08%, respectively over the original predictor.

  • PDF

3차원 구조 멀티코어 프로세서의 분기 예측 기법에 관한 온도 효율성 분석 (Analysis on the Thermal Efficiency of Branch Prediction Techniques in 3D Multicore Processors)

  • 안진우;최홍준;김종면;김철홍
    • 정보처리학회논문지A
    • /
    • 제19A권2호
    • /
    • pp.77-84
    • /
    • 2012
  • 프로세서의 성능을 효율적으로 증가시키기 위한 기법 중 하나로 명령어 수준의 병렬성을 높이는 추론적 수행(Speculative execution)이 사용되고 있다. 추론적 수행 기법의 효율성을 결정하는 가장 중요한 핵심 요소는 분기 예측기의 정확도이다. 하지만, 높은 예측율을 보장하는 복잡한 구조의 분기 예측기를 최근 주목 받고 있는 3차원 구조 멀티코어 프로세서에 적용하는데 있어서는 발열 현상이 큰 장애요소가 될 것으로 예측된다. 본 논문에서는 3차원 구조 멀티코어 프로세서에서 발생할 수 있는 분기 예측기의 높은 발열 문제를 해결하기 위해 두 가지 기법을 제시하고, 이에 대한 효율성을 상세하게 분석하고자 한다. 첫번째 기법은 분기 예측기의 온도가 임계 온도 이상으로 올라가는 경우 분기 예측기의 동작을 일시적으로 정지시키는 동적 온도 관리 기법이고, 두번째 기법은 3차원 구조 멀티코어 프로세서의 각 층 별로 온도를 고려하여 서로 다른 복잡도를 지닌 분기 예측기를 차등 배치하는 기법이다. 두 가지 기법 중에서 복잡도를 고려한 차등 배치 기법은 평균 $87.69^{\circ}C$의 온도를 나타내는 반면, 동적 온도 관리 기법은 평균 $89.64^{\circ}C$의 온도를 나타내었다. 그리고, 각 층에서 발생하는 온도 변화율을 각 기법에 대하여 비교한 결과, 동적 온도 관리 기법의 온도 변화율은 평균 $17.62^{\circ}C$을 나타내었고 복잡도 차등 배치 기법의 온도 변화율은 평균 $11.17^{\circ}C$을 나타내었다. 이러한 온도 분석을 통하여 3차원 멀티코어 프로세서에서 분기 예측기의 온도를 제어하였을 경우, 복잡도 차등 배치 기법을 적용하는 것이 더 효율적임을 알 수 있다. 성능적인 측면을 분석한 결과, 동적 온도 관리 기법은 해당 기법을 적용하지 않았을 경우보다 평균 27.66%의 성능하락을 나타내었지만, 복잡도 차등 배치 기법은 평균 3.61%의 성능 하락만을 나타내었다.

패턴/패스 통합 분기 예측 전략의 성능 분석 (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

멀티프로그래밍 환경에서의 분기 예측 (Branch Prediction in Multiprogramming Environment)

  • 이문상;강영재;맹승렬
    • 한국정보과학회논문지:시스템및이론
    • /
    • 제26권9호
    • /
    • pp.1158-1165
    • /
    • 1999
  • 조건부 분기 명령어(conditional branch instruction)의 잘못된 분기 예측(branch misprediction)은 프로세서의 성능 향상에 심각한 장애 요인이 되고 있다. 특히 시분할(time-sharing) 시스템과 같이 문맥 교환(context switch)이 발생하는 멀티프로그래밍 환경(multiprogramming environment)에서는 더욱 낮은 분기 예측 정확성(branch prediction accuracy)을 보인다. 본 논문에서는 문맥 교환이 발생하는 멀티프로그래밍 환경에서 높은 분기 예측 정확성을 보이는 중첩 분기 예측표 교환(Overlapped Predictor Table Switch, OPTS) 기법을 소개한다. 분기 예측표(predictor table)를 분할하여 각각의 프로세스(process)에 할당하는 OPTS 기법은 문맥 교환의 영향을 최소화함으로써 높은 분기 예측 정확성을 유지하는 분기 예측 방법이다.Abstract There is wide agreement that one of the most important impediments to the performance of current and future pipelined superscalar processors is the presence of conditional branches in the instruction stream. Accurate branch prediction is required to overcome this performance limitation. Many branch predictors have been proposed to help to alleviate this problem, including the two-level adaptive branch predictor, and more recently, hybrid branch predictor. In a less idealized environment, such as a time-sharing system, code of interest involves context switches. Context switches, even at fairly large intervals, can seriously degrade the performance of many of the most accurate branch prediction schemes. In this study, we measure the effect of context switch on the branch prediction accuracy in various situation and show the feasibility of our new mechanism, OPTS(Overlapped Predictor Table Switch), which save and restore branch history table at every context switch.

내장형 프로세서를 위한 저전력 분기 예측기 설계 기법 (A Power-aware Branch Predictor for Embedded Processors)

  • 김철홍;송성근
    • 정보처리학회논문지A
    • /
    • 제14A권6호
    • /
    • pp.347-356
    • /
    • 2007
  • 프로세서의 파이프라인 길이가 점차 길어지고 한 사이클에 이슈되는 명령어의 수가 증가함에 따라, 분기 예측기의 정확도는 프로세서의 성능에 상당한 영향을 미치게 되었다. 또한, 내장형 프로세서를 설계하는데 있어서는 전력 효율성이 가장 중요한 설계 고려 사항 중 하나가 되었다. 그러므로, 내장형 프로세서의 분기 예측기를 설계할 때에는 성능과 전력 효율성이 함께 고려되어야 한다. 본 논문에서는 gshare 분기 예측기가 적용된 내장형 프로세서에서 선택적인 BTB (Branch Target Buffer) 접근을 가능하게 하는 저전력 분기 예측기를 제안하고자 한다. 제안하는 분기 예측기 내에서 BTB는 직전 명령어가 테이큰 (Taken) 분기로 예측되지 않는 경우에는, PHT (Pattern History Table)의 예측 결과가 테이큰인 경우에만 접근된다. PHT의 예측 결과가 테이큰인 분기 명령어의 경우에만 다음에 인출될 명령어의 주소를 BTB 접근을 통해 얻은 주소로 결정하기 때문이다. 물론, 이와 같은 선택적인 BTB 접근으로 인하여 성능 저하가 발생하는 것을 방지하기 위해 직전 명령어가 테이큰분기로 예측된 경우에는 PHT의 예측 결과에 관계없이 BTB는 항상 접근된다. 선택적인 BTB 접근을 하기 위해, 제안하는 분기 예측기 내의 PHT는 기존 분기 예측기의 PHT와 비교하여 1 사이클 일찍 접근되도록 구현한다. 1 사이클 빠른 접근을 위해 제안하는 PHT는 한 번의 접근을 통해 두 개의 예측 결과를 동시에 얻어오게 구현하고, 이를 통해 PHT의 접근 횟수도 줄임으로써 분기 예측기의 전력 소모를 줄이는 효과 또한 얻게 된다. 제안하는 분기 예측기는 하드웨어 오버헤드나 예측 정확도의 감소 없이 전력 소모를 줄일 수 있다는 장점을 가진다. 실험 결과에 따르면, 제안하는 분기 예측기는 기존의 분기 예측기와 비교하여 $35{\sim}48%$의 전력 소모를 줄이는 결과를 보인다.