Source-to-source transformations for irregular and multithreaded code optimization / par Julien Jaeger ; sous la direction de Denis Barthou

Date :

Type : Livre / Book

Type : Thèse / Thesis

Langue / Language : anglais / English

Programmation (mathématiques)

Parallélisme (informatique)

Codage

Ordonnancement (informatique)

Traitement réparti

Classification Dewey : 004.35

Barthou, Denis (1970-....) (Directeur de thèse / thesis advisor)

Université de Versailles-Saint-Quentin-en-Yvelines (1991-....) (Organisme de soutenance / degree-grantor)

Collection : Lille-thèses / Atelier de reproduction des thèses / Lille : Atelier national de reproduction des thèses , 1983-2017

Relation : Source-to-source transformations for irregular and multithreaded code optimization / par Julien Jaeger ; sous la direction de Denis Barthou / [S.l.] : [s.n.] , 2012

Résumé / Abstract : Dans cette thèse, nous montrons que les optimisations source-à-source sont un moyen efficace pour générer des programmes irréguliers ou parallèles performants à partir d'une implémentation. Après avoir présenté l'évolution des architectures des processeurs, nous proposons deux méthodes distinctes. La première pour extraire des codelets d'un programme irréguliers, les optimiser et prédire les performances du programme modifié. L'autre pour limiter l'impact des problèmes d'alignements dus à la vectorisation ou aux conflits de bancs. Nous présentons aussi différentes techniques de parallélisation, l'une générant des codelets parallèles, l'autre ordonnançant un graphe de taches sur un système hétérogène

Résumé / Abstract : In this dissertation, we show that source-to-source optimization is an efficient method to generate a high performance program for irregular and heterogeneous code from a basic implementation. After describing the evolution of processor architectures, we provide two methods. The first one extract codelets from an irregular code, optimizing these codelets, and predicting the performance of the modified program. The other one limits the impact of alignment issues due to vectorization or bank conflicts. We also present two parallelization technics, one generating parallel codelets, the other scheduling a task graph on an heterogeneous system