A New Fast Algorithm for Optimal Register Allocation in Modulo Scheduled Loops - Inria - Institut national de recherche en sciences et technologies du numérique Access content directly
Reports (Research Report) Year : 1998

A New Fast Algorithm for Optimal Register Allocation in Modulo Scheduled Loops

Abstract

In this paper, we focus on the register allocation phase of software pipelinin- g. We are interested in optimal register allocation. This means that the number of registers used must be equal to the maximum number of simultaneously alive variables of the loop. Usually two different means are used to achieve this, namely register renaming or loop unrolling. As these methods have both drawbacks, we introduce here a solution which is a trade-off between inserting {\em move} operations and unrolling the loop. We present a new algorithmic framework of optimal register allocation for modulo scheduled loops. The proposed algorithm, called U&M, is simple and efficient. We have implemented it in MOST (Modulo Scheduling Toolset). An experimental study of our algorithm on more than 1000 loops has been performed and we report asummary of the main results. This new algorithm, that combines loop unrolling and register renaming, performs consistently better than several other existing methods.

Domains

Other [cs.OH]
Fichier principal
Vignette du fichier
RR-3337.pdf (382.46 Ko) Télécharger le fichier

Dates and versions

inria-00073352 , version 1 (24-05-2006)

Identifiers

  • HAL Id : inria-00073352 , version 1

Cite

Sylvain Lelait, Guang R. Gao, Christine Eisenbeis. A New Fast Algorithm for Optimal Register Allocation in Modulo Scheduled Loops. [Research Report] RR-3337, INRIA. 1998. ⟨inria-00073352⟩
253 View
219 Download

Share

Gmail Facebook Twitter LinkedIn More