Optimizing Affine Control with Semantic Factorizations - Inria - Institut national de recherche en sciences et technologies du numérique
Rapport (Rapport De Recherche) Année : 2017

Optimizing Affine Control with Semantic Factorizations

Résumé

Hardware accelerators generated by polyhedral synthesis make an extensive use of affine expressions (affine functions and convex polyhedra) in control and steering logic. Since the control is pipelined, these affine objects must to be evaluated at the same time for different values, which forbids aggressive reuse of operators. In this report, we propose a method to factorize a collection of affine expressions without preventing pipelining. Our key contributions are (i) to use semantic factorizations exploiting arithmetic properties of addition and multiplication and (ii) to rely on a cost function whose minimization ensures a correct usage of FPGA resources. Our algorithm is totally parametrized by the cost function, which can be customized to fit a target FPGA. Experimental results on a large pool of applications show a significant improvement compared to traditionnal common subexpression factorization. As a bonus, the optimization gain is statistically more regular compared to common subexpression elimination.
Les accélérateurs matériels générés par synthèse de circuit polyédrique utilisent intensivement des expressions affines (functions affines et polyèdres convexes) dans leur circuit de contrôle. Pour garantir la bande passante, ces expressions doivent être évaluées en même temps pour différentes valeurs, ce qui interdit toute réutilisation aggressive des opérateurs. Dans ce rapport, nous proposons un algorithme pour factoriser efficacement une collection d'expressions affines sans interdire le pipeline. Nos contribution sont (i) l'utilisation de factorisations sémantiques exploitant les propriétés arithmétiques de l'addition et de la multiplication et (ii) l'utilisation d'une fonction de coût générique dont la minimisation assure une utilisation réduite des blocs reconfigurables d'un FPGA. Notre algorithme est totalement paramétré par la fonction de coût, qui peut être modifiée selon l'architecture reconfigurable ciblée. Les résultats expérimentaux sur un nombre important d'applications montrent une amélioration significative de coût comparé à la traditionnelle factorisation de sous-expressions communes. Comme bonus, le gain en coût obtenu avec notre algorithme est statistiquement plus régulier que celui obtenu par factorisation de sous-expressions communes.
Fichier principal
Vignette du fichier
RR-9034.pdf (1.03 Mo) Télécharger le fichier
Origine Fichiers produits par l'(les) auteur(s)

Dates et versions

hal-01470873 , version 1 (17-02-2017)
hal-01470873 , version 2 (03-03-2017)
hal-01470873 , version 3 (24-11-2017)

Identifiants

  • HAL Id : hal-01470873 , version 1

Citer

Christophe Alias, Alexandru Plesco. Optimizing Affine Control with Semantic Factorizations. [Research Report] RR-9034, INRIA Grenoble - Rhone-Alpes. 2017, pp.24. ⟨hal-01470873v1⟩
233 Consultations
290 Téléchargements

Partager

More