Nothing Special   »   [go: up one dir, main page]

skip to main content
Loop optimization techniques on multi-issue architectures
Publisher:
  • University of Michigan
  • Dept. 72 Ann Arbor, MI
  • United States
Order Number:UMI Order No. GAX95-27657
Reflects downloads up to 12 Nov 2024Bibliometrics
Skip Abstract Section
Abstract

This work examines the interaction of compiler scheduling techniques with processor features such as the instruction issue policy. Scheduling techniques designed to exploit instruction level parallelism are employed to schedule instructions for a set of multi-issue architectures. A compiler is developed which supports block scheduling, loop unrolling, and software pipelining for a range of target architectures. The compiler supports aggressive loop optimizations such as induction variable detection and strength reduction, and code hoisting. A set of machine configurations based on the MIPS R3000 ISA are simulated, allowing the performance of the combined compiler-processor to be studied. The Aurora III, a prototype superscalar processor, is used as a case study for the interaction of compiler scheduling techniques with processor architecture.Our results show that the scheduling technique chosen for the compiler has a significant impact on the overall system performance and can even change the rank ordering when comparing the performance of VLIW, DAE and superscalar architectures. Our results further show that, while significant, the performance effects of the instruction issue policy may not be as large as the effects of other processor features, which may be less costly to implement, such as 64 bit wide data paths or store buffers.

Contributors
  • University of Michigan, Ann Arbor
Please enable JavaScript to view thecomments powered by Disqus.

Recommendations