A Predicate-Sensitive Scheduling Algorithm in Instruction-Level Parallelism Processors

ILP 프로세서를 위한 조건실행 지원 스케쥴링 알고리즘

  • 유병강 (순천향대학교 일반대학원) ;
  • 이상정 (순천향대학교 컴퓨터학부)
  • Published : 1998.01.01

Abstract

Exploitation of instruction-level parallelism(ILP) is an effective mechanism for improving the performance of modern super-scalar and VLIW processors. Various software techniques can be applied to increase ILP. Among these techniques, predicated execution is the one that increases the degree of ILP by allowing instructions from different basic blocks to be converted to a single basic block by removing branch instructions. In this paper, a global predicate-sensitive scheduling algorithm is proposed to improve the performance for ILP processors that support predicated execution. In order to examine the performance of proposed algorithm, a C compiler and a simulator are developed. By simulating various benchmark programs with the compiler and the simulator, the performance results of this algorithm are measured and the effectiveness of the algorithm is verified. As a result of measure performance with I, 2, 4 issue execution, this study was confirmed average performance by 20% or more.

명령어 수준에서 병렬성(Instruction-Level Parallelism, ILP)을 추출하는 것은 슈퍼스칼라 및 VLIW프로세서들의 성능 개선을 위한 효과적인 메커니즘이다. 이를 위하여 여러 가지 소프트웨어 기법들이 응용될 수 있다. 이들 기법 중 조건실행(predicated execution)은 명령어의 조건으로 참조되는 부울 소스 오퍼랜드의 값을 기본으로 명령어 조건적 실행 여부를 참조하여 분기명령을 제거함으로서 여러 기본 블록의 명령들을 하나의 기본블록으로 구성하여 ILP를 증가시키는 기법이다. 본 논문은 조건실행을 지원하는 ILP프로세서들의 성능개선을 위하여 기본 블록을 넘어선 광역 조건실행 지원 스케쥴링 알고리듬(global predicate-sensitive scheduling algorithm)을 제안한다. 또한 C 컴파일러와 시뮬레이터를 개발하고 다양한 벤치마크 프로그램에 대하여 제안된 알고리듬의 성능을 측정하고 타당성을 확인한다. 1, 2, 4이슈실행에 대한 성능 측정 결과, 평균 20%의 성능 개선이 확인되었다.

Keywords