Sensibilité aux jeux de données de la compilation itérative
Institution:
Paris 11Disciplines:
Directors:
Abstract EN:
In the context of architecture processor conception, the performance research leads to a constant growth of architecture complexity. This growth of architecture complexity made more difficult the exploitation of their potential performance. To improve architecture performance exploitation, new optimization techniques based on dynamic behavior –i. E. Run time behavior- has been proposed Iterative compilation is a such an optimization approach. This approach allows to determine more relevant transformation than those obtained by static analysis. The main drawback of this optimization method is based on the fact that the information that lead to the code transformation are specific to a particular data set. Thus the determined optimizations are dependent on the data set used during the optimization process. In this thesis, we study the optimized application performance variations according to the data set used for two iterative code transformation techniques. We introduce different metrics to quantify this sensitivity. Also, we propose data set selection methods for choosing which data set to use during code transformation process. Selected data sets enable to obtain an optimized code with good performance with all other available data sets.
Abstract FR:
Dans le cadre de la conception d’architecture de processeurs, la recherche de performances a entraîné une augmentation continue de la complexité de ces architectures. Cette augmentation de la complexité des architectures a rendu de plus en plus difficile l’exploitation de leurs performances potentielles. Afin d’améliorer l’exploitation des performances des architectures, de nouvelles stratégies d’optimisation intégrant des informations sur le comportement dynamique –i. E. Lors de l’exécution – du code ont été proposées, comme le principe de la compilation itérative. Ces approches permettent de déterminer des transformations plus pertinentes que celles obtenues par une analyse statique. Le principal écueil de ces méthodes de transformation de code réside dans le fait que les transformations du code sont déterminées à partir d’informations issues de l’exécution de l’application avec un jeu de données particulier. L’optimisation obtenue est donc dépendante du jeu de données utilisé pendant le processus d’optimisation. Dans cette thèse, nous étudions, pour deux méthodes de transformation de code itératives différentes, la variation des performances des applications optimisées en fonction des jeux de données utilisés. Nous introduisons différentes métriques afin de quantifier cette sensibilité. Nous proposons également des méthodes de sélection des jeux de données à utiliser pendant le processus de transformation de code afin d’obtenir un code optimisé exhibant de bonnes performances avec l’ensemble des jeux de données.