XFOR (Multifor): A New Programming Structure to Ease the Formulation of Efficient Loop Optimizations

Imen Fassi 1, 2
2 CAMUS - Compilation pour les Architectures MUlti-coeurS
Inria Nancy - Grand Est, ICube - Laboratoire des sciences de l'ingénieur, de l'informatique et de l'imagerie
Résumé : Nous proposons une nouvelle structure de programmation appelée "XFOR" ou "Multifor", dédiée à la programmation orientée réutilisation de données. XFOR permet de gérer simultanément plusieurs boucles "for" ainsi que d'appliquer des transformations (simples ou composées) de boucles d'une façon aisée et intuitive. Les expérimentations ont montré des accélérations significatives des codes XFOR par rapport aux codes originaux, mais aussi par rapport au codes générés automatiquement par l'optimiseur polyédrique de boucles Pluto. Nous avons mis en oeuvre la structure XFOR par le développement de trois outils logiciels: (1) un compilateur source-à-source nommé IBB (Iterate-But-Better!), qui traduit automatiquement tout code basé sur le langage C contenant des boucles XFOR en un code équivalent où les boucles XFOR ont été remplacées par des boucles "for" sémantiquement équivalentes. L'outil IBB bénéficie également des optimisations implémentées dans le générateur de code polyédrique CLooG qui est invoqué par IBB pour générer des boucles "for" à partir d'une description OpenScop; (2) un environnement de programmation XFOR nommé XFOR-WIZARD qui aide le programmeur dans la ré-écriture d'un programme utilisant des boucles "for" classiques en un programme équivalent, mais plus efficace, utilisant des boucles XFOR; (3) un outil appelé XFORGEN, qui génère automatiquement des boucles XFOR à partir de toute représentation OpenScop de nids de boucles transformées générées automatiquement par un optimiseur automatique.
Type de document :
Thèse
Computation and Language [cs.CL]. Université de Strasbourg, 2015. English
Liste complète des métadonnées

Littérature citée [66 références]  Voir  Masquer  Télécharger

https://hal.inria.fr/tel-01251721
Contributeur : Philippe Clauss <>
Soumis le : mercredi 6 janvier 2016 - 16:13:17
Dernière modification le : jeudi 29 mars 2018 - 09:10:05
Document(s) archivé(s) le : jeudi 7 avril 2016 - 16:08:10

Fichier

Identifiants

  • HAL Id : tel-01251721, version 1

Collections

Citation

Imen Fassi. XFOR (Multifor): A New Programming Structure to Ease the Formulation of Efficient Loop Optimizations. Computation and Language [cs.CL]. Université de Strasbourg, 2015. English. 〈tel-01251721〉

Partager

Métriques

Consultations de la notice

311

Téléchargements de fichiers

200