http://chineseinput.net/에서 pinyin(병음)방식으로 중국어를 변환할 수 있습니다.
변환된 중국어를 복사하여 사용하시면 됩니다.
백경호,김은성 대한전자공학회 2006 電子工學會論文誌-CI (Computer and Information) Vol.43 No.4
The indirect branch instruction is a most substantial obstacle in utilizing ILP of modern high performance processors. The target address of an indirect branch has the polymorphic characteristic varied dynamically, so it is very difficult to predict the accurate target address. Therefore the performance of a processor with speculative methodology is reduced significantly due to the many execution cycle delays in occurring the misprediction. We proposed the very accurate and novel indirect branch prediction scheme so called data-dependence based prediction. The predictor results in the prediction accuracy of 98.92% using 1K entries, and 99.95% using 8K. But, all of the proposed indirect predictor including our predictor has a large hardware overhead for restoring expected target addresses as well as tags for alleviating an aliasing. Hence, we propose the scheme minimizing the hardware overhead without sacrificing the prediction accuracy. Our experiment results show that the hardware is reduced about 60% without the performance loss, and about 80% sacrificing only the performance loss of 0.1% in aspect of the tag overhead. Also, in aspect of the overhead of storing target addresses, it can save the hardware about 35% without the performance loss, and about 45% sacrificing only the performance loss of 1.11%. 간접 분기 명령은 현대적인 고성능 프로세서의 ILP를 제한하는 가장 심각한 장애 요인 중 하나이다. 다른 분기 명령들과는 다르게 간접 분기는 그 타겟 주소가 동적으로 다형태로 변하기 때문에 이를 예측하기 매우 어려우며, 투기적 실행 방식을 사용하는 대부분의 현대적인 고성능 프로세서에서는 예측이 잘못되는 경우에 많은 수행 사이클 지연이 일어나게 되어 프로세서의 성능이 크게 떨어지게 된다. 우리는 예측 정확도가 아주 뛰어난 새로운 개념의 간접 분기 예측 방식 즉, 간접 분기 명령과 이와 데이터 종속 관계를 가진 이 명령어 보다 훨씬 앞서 수행되는 명령어의 레지스터 내용을 결합시켜 간접 분기의 타겟을 예측해내는 방식을 제안하였다. 1K의 예측기를 사용하는 경우에 98.92%의 예측 정확도를 보이고, 8K의 크기를 사용하면 거의 완벽한 99.95%의 정확도를 보인다. 그러나 지금까지 제안된 모든 예측기가 그러하듯이 예상 타겟 주소와 함께 앨리어싱 문제를 완화시키기 위한 태그를 저장하기 위한 하드웨어 오버헤드가 크다는 단점을 안고 있다. 그러므로 본 논문에서는 예측 정확도의 손실없이도 예측기의 하드웨어 오버헤드를 최소한으로 줄이는 방법을 제안한다. 실험 결과로써 태그 저장에 따른 하드웨어를 성능 손실 없이 약 60%를 줄일 수 있으며, 0.1%의 손실을 감수하면 약 80%까지 줄일 수 있다. 또한 부분 타겟 저장으로 인한 성능 손실 없이 타겟 주소 저장에 따른 하드웨어를 약 35% 절약할 수 있으며, 1.11%의 손실을 감수하면 약 45%까지 절약할 수 있다.
백경호,김은성 대한전자공학회 2004 電子工學會論文誌-CI (Computer and Information) Vol.41 No.06
Modern processors achieve high performance exploiting avaliable Instruction Level Parallelism(ILP) by using speculative technique such as branch prediction. Traditionally, branch direction can be predicted at very high accuracy by 2-level predictor, and branch target address is predicted by Branch Target Buffer(BTB). Except for indirect branch, each of the branch has the unique target, so its prediction is very accurate via BTB. But, because indirect branch has dynamically polymorphic target, indirect branch target prediction is very difficult. In general, the technique of branch direction prediction is applied to indirect branch target prediction, and much better accuracy than traditional BTB is obtained for indirect branch. We present a new indirect branch target prediction scheme which combines a indirect branch instruction with its data dependent register of the instruction executed earlier than the branch. The result of SPEC benchmark simulation which are obtained on SimpleScalar simulator shows that the proposed predictor obtains the most perfect prediction accuracy than any other existing scheme. 현대적인 프로세서들은 그 성능을 높이기 위해서 분기 예측과 같은 투기적인 방식으로 가용한 ILP 즉 명령어 수준의 병렬성을 추구한다. 전통적으로, 분기 방향은 2-단계 예측기를 사용하여 아주 높은 비율의 정확도로 예측이 가능하고, 분기 타겟 주소는 BTB를 사용하여 예측한다. 간접 분기를 제외한 모든 분기들은 그 자신의 타겟 주소가 유일하기 때문에 BTB로 거의 정확하게 예측되지만, 간접 분기는 그 타겟 주소가 동적으로 수시로 달라지기 때문에 예측하기가 매우 어렵다. 일반적으로, 분기 방향을 예측하는 기술을 간접 분기의 타겟 주소를 예측하는데 적용하여 전통적인 BTB 보다 훨씬 좋은 정확도를 얻고 있다. 본 논문에서는 간접 분기 명령과 이와 데이터 종속적인 관계를 갖고 있는 이 간접 분기 명령 보다 훨씬 앞서 수행되는 명령어의 레지스터 내용을 결합하여 간접 분기의 타겟을 예측하는 전혀 새로운 방법을 제안한다. 제안된 방식의 효율성을 검증하기 위해 심플스칼라 시뮬레이터 상에서 제안된 예측기를 구현하고 SPEC 벤치마크를 시뮬레이션하여, 수시로 바뀌는 간접 분기의 타겟을 거의 완벽하게 예측할 수 있음을 보이고, 기존의 다른 어떤 방법보다도 우수한 결과임을 보인다.