Analyse et transformation de programmes : du modèle polyédrique aux langages formels / Albert Cohen ; sous la dir. de Paul Feautrier

Date :

Editeur / Publisher : [S.l.] : [s.n.] , 1999

Type : Livre / Book

Type : Thèse / Thesis

Langue / Language : français / French

Langages formels

Polytopes

Parallélisme (informatique)

Optimisation mathématique

Classification Dewey : 005.3

Feautrier, Paul (19..-.... ; enseignant-chercheur en informatique) (Directeur de thèse / thesis advisor)

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

Relation : Analyse et transformation de programmes : du modèle polyédrique aux langages formels / Albert Cohen / Villeurbanne : [CCSD] , 2010

Résumé / Abstract : Les microprocesseurs et les architectures parallèles d'aujourd'hui lancent de nouveaux défis aux techniques de compilation. En présence de parallélisme, les optimisations deviennent trop spécifiques et complexes pour être laissées au soin du programmeur. Les techniques de parallélisation automatique dépassent le cadre traditionnel des applications numériques et abordent de nouveaux modèles de programmes, tels que les nids de boucles non affines, les appels récursifs et les structures de données dynamiques. Des analyses précises sont au coeur de la détection du parallélisme, elles rassemblent des informations à la compilation sur les propriétés des programmes à l'exécution. Ces informations valident des transformations utiles pour l'extraction du parallélisme et la génération de code parallèle. Cette thèse aborde principalement des analyses et des transformations avec une vision par instances, c'est-à-dire considérant les propriétés individuelles de chaque instance d'une instruction à l'exécution. Une nouvelle formalisation à l'aide de langages formels nous permet tout d'abord d'étudier une analyse de dépendances et de définitions visibles par instances pour programmes récursifs. L'application de cette analyse à l'expansion et la parallélisation de programmes récursifs dévoile des résultats encourageants. Les nids de boucles quelconques font l'objet de la deuxième partie de ce travail. Une nouvelle étude des techniques de parallélisation fondées sur l'expansion nous permet de proposer des solutions à des problèmes d'optimisation cruciaux.