SIRA: Schedule Independent Register Allocation for Software Pipelining - Inria - Institut national de recherche en sciences et technologies du numérique Accéder directement au contenu
Communication Dans Un Congrès Année : 2001

SIRA: Schedule Independent Register Allocation for Software Pipelining

Sid Touati
  • Fonction : Auteur
  • PersonId : 962200
Christine Eisenbeis
  • Fonction : Auteur
  • PersonId : 833430

Résumé

The register allocation in loops is generally carried out after or during the software pipelining process. This is because doing the register allocation at first step without assuming a schedule lacks the information of interferences between values live ranges. The register allocator introduces extra false dependencies which reduces dramatically the original ILP (Instruction Level Parallelism). In this paper, we give a new formulation to carry out the register allocation before the scheduling process, directly on the data dependence graph by inserting some anti dependencies arcs (reuse edges). This graph extension is first constrained by minimizing the critical cycle and hence minimizing the ILP loss due to the register pressure. The second constraint is to ensure that there is always a cyclic register allocation with the set of available registers, and this for any software pipelining of the new graph. We give the exact formulation of this problem with linear integer programming.

Domaines

Autre [cs.OH]
Fichier principal
Vignette du fichier
SIRA-2.pdf (159.67 Ko) Télécharger le fichier
Origine : Fichiers produits par l'(les) auteur(s)
Loading...

Dates et versions

hal-00647138 , version 1 (01-12-2011)

Identifiants

  • HAL Id : hal-00647138 , version 1

Citer

Sid Touati, Christine Eisenbeis. SIRA: Schedule Independent Register Allocation for Software Pipelining. Workshop on Compilers for Parallel Computers, Jun 2001, Edinburgh, United Kingdom. ⟨hal-00647138⟩
293 Consultations
88 Téléchargements

Partager

Gmail Facebook X LinkedIn More