Dans un second temps, nous avons entamé l'étude de transformations de code source afin de réduire / contrôler la quantité d'énergie consommée par les logiciels.
In a second time, we engaged the study of source code transformation rules in order to reduce/control the quantity of consumed energy by the software.
Dans un second temps, nous avons entamé l'étude de transformations de code source afin de réduire / contrôler la quantité d'énergie consommée par les logiciels.
In a second time, we engaged the study of source code transformation rules in order to reduce/control the quantity of
Nous présentons les détails des représentation fortement typées des langages intermédiaires, et les contraintes qu'elles imposent sur l'implantation des transformations de code.
The thesis presents the details of the strongly typed intermediate representations and the constraints they set on the implementation of code transformations.
Nous couvrons deux aspects: (i) Le support automatisé pour composer et appliquer des séquences de transformations de code.
Nous couvrons deux aspects: Le support automatisé pour composer et appliquer des séquences de transformations de code.
Une approche générale est de passer par une séquence de transformations de code : Prédication -> vectorisation (en utilisant l'une des méthodes ci-dessus) -> retirer les prédicats des vecteurs -> supprimer les prédicats scalaires.
One general approach is to go through a sequence of code transformations: predication -> vectorization(using one of the above methods) -> remove vector predicates -> remove scalar predicates.
Nous effectuons des transformations de code en appliquant le modèle polyédrique que nous avons adapté à la parallélisation spéculative au cours de l'exécution.
We perform code transformations by applying the polyhedral model that we adapted for speculative and runtime code parallelization.
Ces transformations sont généralement intégrées dans les transformations de code appliquées pendant le processus de compilation, comme les optimisations.
These transformations are usually integrated into code transformations applied during the compilation process, such as optimisations.
Dans cette thèse, nous proposons d'améliorer les transformations de code pour mieux aider les développeurs dans l'application de transformation de code systématiques et complexes.
In this thesis we propose to improve source code transformations to better support developers performing more complex and systematic code transformations.
L'accès à des informations de haut niveau concernant le système est donné, et ces informations sont utilisées dans la réalisation de transformations de code afin d'optimiser ledit code.
High level information relating to the system is accessed and this information is used in performing code transformations in order to optimize the code.
Notre compilateur implante les transformations de code essentielles pour un langage fonctionnel d'ordre supérieur, nommément une conversion CPS, une conversion des fermetures et une génération de code.
Our compiler implements the essential code transformations for a higher-order functional language, namely a CPS conversion and closure conversion as well as a code generation.
Pour C/C++, les compilateurs modernes permettent à une tierce partie d'ajouter des transformations de code et de modifier les processeurs cibles.
For C/C++, modern compilers allow third party vendors to add specific code transformations and to modify the target processors.
Ainsi, les transformations de code visant à placer un algorithme sur GPU tout en optimisant l'exploitation des capacités de ce dernier, ne sont pas des opérations triviales.
Therefore, mapping algorithms on GPUs, while exploiting high performance capacities of this architecture, aren't trivial this thesis, we have developed a mapping methodology for sequential algorithms and designed it for GPUs.