A New Fast Algorithm for Optimal Register Allocation in Modulo Scheduled Loops - Archive ouverte HAL Accéder directement au contenu
Rapport (Rapport De Recherche) Année : 1998

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

Résumé

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.

Domaines

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

Dates et versions

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

Identifiants

  • HAL Id : inria-00073352 , version 1

Citer

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⟩
256 Consultations
225 Téléchargements

Partager

Gmail Facebook X LinkedIn More