Elimination de redondances pour architectures EPIC
L’e?limination de redondances partielles (Partial Redundancy Elimination ou PRE) est
une des techniquesd’optimisation les plus re?pandues.Elle regroupeplusieurs optimisations classiques,
elle est de ce fait tre`s utilise?e dans les compilateurs commerciaux. Par ailleurs, les architectures
re?centes offrent la possibilite? (appele?e pre?dication) de garder des instructions par
un registre logique de 1 bit, dont la valeur de?termine si l’effet de l’instruction doit eˆtre pris en
compte ou au contraire ignore?. La pre?dication est appele?e a` se re?pandre avec les architectures
EPIC (Explicitly Parallel Instruction Computing), notamment l’architecture IA-64 [INT 99] de
la prochaine ge?ne?ration des processeurs Intel. Nous montrons dans ce papier que la PRE classique
est inadapte?e au code pre?dicate?, et proposons une technique fonde?e sur l’utilisation d’expressions
logiques de pre?dicats mate?rialise?s. Nous pre?sentons des exemples concrets et des re?-
sultats obtenus a` l’aide du prototype que nous avons imple?mente?.
Partial RedundancyElimination (PRE) is one of the most widespreadoptimizations in
compilers. On the other hand, recentarchitecturesfeature predication, i.e., instructions guarded
by a 1-bit register that dynamically controls whether the effect of the instruction should be committed
or nullified. Predicated code will be more and more common with the advent of the EPIC
(Explicitly Parallel Instruction Computing) architecture such as the IA-64 [INT 99]. We demonstrate
that current PREs are inadequate for predicated code and introduce a PRE framework
based on first-order logical formulas on materialized predicates. We give significant examples
and present the result of our prototype implementation.
I.DJELIC
Elimination de redondances partielles, architectures EPIC, code prédicaté, Trimaran
Partial Redundancy Elimination, EPIC architectures, predicated code, Trimaran
Français
|