명령어의 병렬성과 명령어 윈도우크기가 수퍼스칼라 성능에 미치는 영향

본 논문에서는 순차 이슈와 비순차 이슈를 사용하는 수퍼스칼라 프로세서(superscalar processor)에서 명령어의 이슈율을 예측할 수 있는 새로운 해석적인 모델을 제안하였다. 기존의 방법은 대부분 수퍼스칼라의 성능을 알기 위해 단순히 시뮬레이션으로 명령어 레벨의 병렬성만을 측정하였으나 이러한 방법은 프로세서 성능제약의 원인을 명확히 찾아낼 수 없다. 본 논문은 명령어 이슈 방법, 명령어의 병렬성, 분기명령의 빈도수, 분기예측의 정확도, 명령어 윈도우(instruction window)의 크기, 파이프라인의 유니트 수 등을 고려하여 수퍼스칼라에서 명령어의 이슈율을 해석적 방법으로 계산하였다. 해석적 모델의 타당성을 검증하기 위해 인텔 80386/80387 명령어 트레이스(instruction trace)를 생성한 후 시뮬레이션을 수행하였으며, 시뮬레이션 결과 제안된 모델은 수퍼스칼라의 이슈율을 3~10% 이내로 정확히 추정하였다. 해석적 모델과 시뮬레이션에 의하면 비순차 이슈는 순차 이슈에 비하여 벤치마크 프로그램에 따라 7O~206%의 성능 향상을 보였다. 본 모델은 수퍼스칼라 프로세서와 응용 프로그램의 다양한 특성을 해석적 모델의 파라메터로 특징 지움으로써 시뮬레이션에서 드러나지 않는 성능제약의 원인을 명확히 규명할 수 있고, 새로운 프로세서의 설계시마다 수행하는 과도한 시뮬레이션을 실질적으로 줄일 수 있을 것이다.