Loop optimization for horizontal microcoded machines

  • Authors:
  • François Bodin;François Charot

  • Affiliations:
  • IRISA, Campus de Beaulieu, 35042 Rennes-Cedex, France;IRISA, Campus de Beaulieu, 35042 Rennes-Cedex, France

  • Venue:
  • ICS '90 Proceedings of the 4th international conference on Supercomputing
  • Year:
  • 1990

Quantified Score

Hi-index 0.00

Visualization

Abstract

Long Instruction Word (LIW) architectures exploit parallelism between various functional units. In order to produce efficient code for such an architecture, the microcode compiler will have to expose a relatively large degree of fine grain parallelism and it will have to take into account the fine level characteristics of the architecture. This paper aims at describing a microcode compiler developed at IRISA for such architectures. After a brief overview of the compilation process, we focus on loop scheduling techniques. The software pipelining algorithm is firstly described. Then a new unrolling-based optimization algorithm is introduced and compared to the classical software pipelining algorithm. This algorithm differs from the traditional loop unrolling algorithm because the unrolling of the loop is only used to find a cyclic scheduling of the loop, then this scheduling allows a software pipelining to be constructed.