초록
슈퍼스칼라 프로세서는 성능향상을 위해 명령어 반입폭과 이슈율을 증가시키고 있다. 데이터 종속성은 ILP(Instruction-Level Parallelism)를 향상시키는데 주요 장애요소가 되고 있으며, 최근 여러 논문에서 데이터 종속성을 제거하기 위해서 명령어의 결과값을 예상하는 메커니즘이 연구되었다. 그러나 이러한 예측기들은 예상한 명령어의 실제 결과값으로 예상 테이블을 갱신하기 전에 그 명령어를 다시 예상할 때 부적절(stale)한 데이터를 사용함으로써 예상 실패율이 증가하여 프로세서의 성능을 감소시킨다. 본 논문에서는 부적절 데이터 사용을 줄여 높은 성능을 얻을 수 있는 새로운 하이브리드 예측 메커니즘을 제안한다. 제안된 하이브리드 결과값 예측기는 예상 테이블을 모험적으로 갱신할 수 있기 때문에 부적절 데이터로 인해 잘못 예상되는 명령어의 수를 효과적으로 감소시킨다. 16-이슈폭 슈퍼스칼라 프로세서에서 SPECint95 벤치마크 프로그램에 대해 모험적 갱신을 사용함으로써 모험적 갱신을 사용하지 않은 경우의 평균 예상 정확도 59%에 비해 평균 예상 정확도가 72%에 비해 평균 예상 정확도가 72%로 크게 향상되었다.
To improve the performance of wide-issue Superscalar microprocessors, it is essential to increase the width of instruction fetch and issue rate. Data dependences are major hurdle to exploit ILP(Instruction-Level Parallelism) efficiently, so several related works have suggested that the limits imposed by data dependences can be overcome to some extent with the use of the data value prediction. But the suggested mechanisms may access the same value prediction table entry again before they have been updated with a real data value. They will cause incorrect value prediction by using stable data and incur misprediction penalty and lowering performance. In this paper, we propose a new hybrid value predictor which achieve high performance by reducing stale data. Because the proposed hybrid value predictor can update the prediction table speculatively, it efficiently reduces the number of mispredicted instruction due to stable due to stale data. For SPECint95 benchmark programs on the 16-issue superscalar processors, simulation results show that the average prediction accuracy increase from 59% for non-speculative update to 72% for speculative update.