• 제목/요약/키워드: Dynamic instruction scheduling

검색결과 5건 처리시간 0.021초

VLIW명령어의 동적 스케줄링을 위한 컴파일러와 프로세서간 상호보완 (Compiler Processor Trade-offs for Dynamic Scheduling of VLIW Instructions)

  • Sunghyun Jee
    • 한국정보과학회논문지:시스템및이론
    • /
    • 제31권5_6호
    • /
    • pp.279-287
    • /
    • 2004
  • 본 논문에서 제안한 DISVLIW(Dynamically Instruction Scheduled VLIW) 프로세서 구조는 자료종속성 정보를 이용하여 VLIW(Very Long Instruction Word) 명령어들을 동적으로 스케줄링 할 수 있다. 이러한 동작을 수행하기 위해서, DISVLIW 프로세서는 연산처리기와 동적 스케줄러의 쌍들로 구성되었다. VLIW 명령어들의 동적 스케줄링, 컴파일시간과 실시간의 균등한 작업분배, 명령어내의 명백한 병렬성 표현 둥의 특징은 성능향상에 중요한 영향을 미쳤다. DISVLIW 프로세서 구조의 시뮬레이션 결과, 다양한 벤치마크들과 캐쉬메모리 사이즈들을 이용할 경우에도 DISVLIW 프로세서 구조가 VLIW 프로세서 구조에 비하여 항상 높은 성능향상을 가짐을 확인하였다.

적극적인 명령어 압축을 통한 성능향상 (Performance Improvement Through Aggressive Instruction Packing)

  • 지승현;김석일
    • 정보처리학회논문지A
    • /
    • 제9A권2호
    • /
    • pp.231-240
    • /
    • 2002
  • 본 논문에서는 독립적으로 스케쥴링할 수 있는 VLIW 명령어들을 소개함으로써, 컴파일러와 프로세서에서의 스케줄링 작업을 더욱 균등하게 분배할 수 있는 프로세서 구조를 제안하였다. 제안한 APVLIW(Aggressively Packed VLIW) 프로세서의 목표는 자료종속성을 포함한 VLIW 명령어들을 독립적으로 스케줄링이다. APVLIW 프로세서는 기존의 VLIW 코드로부터 대부분의 NOP(No Operations)과 LNOP(Long NOPs) 명령어들을 제거함으로써 압축된 형태의 긴명령어 그룹을 생성한다. 본 논문에서 제안된 APVLIW 프로세서는 여러 개의 연산처리기와 동적 스케줄러의 쌍들과 자료종속성 정보를 사용하여 긴명령어내의 각 명령어를 독립적으로 스케줄링할 수 있다. 이러한 스케줄링 기법은 특히 루프를 포함한 프로그램을 실행할 때 효과적이다. 실험 결과를 통해서 캐시크기의 변화와 벤치마크 프로그램에 상관없이 APVLIW 프로세서가 VLIM 프로세서에 비하여 성능이 향상됨을 확인하였다.

적합 유전자 알고리즘을 이용한 실시간 코드 스케쥴링 (Fine Grain Real-Time Code Scheduling Using an Adaptive Genetic Algorithm)

  • 정태명
    • 한국정보처리학회논문지
    • /
    • 제4권6호
    • /
    • pp.1481-1494
    • /
    • 1997
  • 실시간 시스템에서 시간적 제약의 불이행의 커다란 손실을 가져오며, 이를 위한 동적 스케쥴링은 유연성을 제공하는 대신 스케쥴링 오버헤드와 분석작업의 복잡성으로 인하여 스케쥴성을 예측하기 어려움이 있다. 반면, 정적 스케쥴링은 수행 중 오버헤드가 없으므로 정확한 시간을 예측할 수 있는 장점이 있다. 따라서 명령어 수준의 정적 스케쥴링과 시간 분석을 통하여 시스템의 시간적 정확도를 보장할 수 있다. 본 논문에서는 확정된 시간 분석을 위하여 befor와 after의 시간 제약을 고급 언어에 표현하고 이를 근거로 시간적 분석에 기반을 둔 컴파일러의 명령어 수준의 스케쥴링 알고리즘을 제안하였다. 이 스케쥴링의 특징은 명령어 수준의 스케쥴링을 위한 도메인이 지나치게 과대하므로 향상된 적합 유전자 알고리즘을 적용한 것이다.

  • PDF

Proposition and Evaluation of Parallelism-Independent Scheduling Algorithms for DAGs of Tasks with Non-Uniform Execution Time

  • Kirilka Nikolova;Atusi Maeda;Sowa, Masa-Hiro
    • 대한전자공학회:학술대회논문집
    • /
    • 대한전자공학회 2000년도 ITC-CSCC -1
    • /
    • pp.289-293
    • /
    • 2000
  • We propose two new algorithms for parallelism-independent scheduling. The machine code generated from the compiler using these algorithms in its scheduling phase is parallelism-independent code, executable in minimum time regardless of the number of the processors in the parallel computer. Our new algorithms have the following phases: finding the minimum number of processors on which the program can be executed in minimal time, scheduling by an heuristic algorithm for this predefined number of processors, and serialization of the parallel schedule according to the earliest start time of the tasks. At run time tasks are taken from the serialized schedule and assigned to the processor which allows the earliest start time of the task. The order of the tasks decided at compile time is not changed at run time regardless of the number of the available processors which means there is no out-of-order issue and execution. The scheduling is done predominantly at compile time and dynamic scheduling is minimized and diminished to allocation of the tasks to the processors. We evaluate the proposed algorithms by comparing them in terms of schedule length to the CP/MISF algorithm. For performance evaluation we use both randomly generated DAGs (directed acyclic graphs) and DACs representing real applications. From practical point of view, the algorithms we propose can be successfully used for scheduling programs for in-order superscalar processors and shared memory multiprocessor systems. Superscalar processors with any number of functional units can execute the parallelism-independent code in minimum time without necessity for dynamic scheduling and out-of-order issue hardware. This means that the use of our algorithms will lead to reducing the complexity of the hardware of the processors and the run-time overhead related to the dynamic scheduling.

  • PDF

GCC based Compiler Construction for Compact DSP32

  • Cho, Myeong-Jin;Lee, Ho-Kyoon;Huong, Giang Nguyen Thi;Kim, Seon-Wook;Han, Young-Sun;Um, Jung-Young
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2011년도 춘계학술발표대회
    • /
    • pp.43-45
    • /
    • 2011
  • Very Long Instruction Word (VLIW) executes multiple instructions in parallel. In order to exploit higher performance, i.e., higher parallelism, VLIW compiler groups as many instructions into one word as possible. In this paper, we show how to construct a VLIW C compiler based on GCC for CDSP32 (Compact Digital Signal Processor 32-bit) which is an embedded DSP processor to issue two instructions in one VLIW. Also, we evaluated the compiler on EEMBC benchmark; the experiment result showed that the total number of dynamic instructions of the VLIW compiler was reduced by 18% on average over without VLIW instruction scheduling.