Thèse soutenue

FR
Auteur / Autrice : Sami Yehia
Direction : Olivier Temam
Type : Thèse de doctorat
Discipline(s) : Informatique
Date : Soutenance en 2004
Etablissement(s) : Paris 11
Partenaire(s) de recherche : autre partenaire : Université de Paris-Sud. Faculté des sciences d'Orsay (Essonne)

Résumé

FR  |  
EN

La possibilité d'intégrer plus d'un milliard de transistors dans un processeur offre un potentiel inégalé pour la haute performance. L'exploitation de cette immense capacité d'intégration est conditionnée par la quantité de parallélisme que l'on peut extraire. Cependant, pour certain codes, notamment les SPECINT 2000, les performances obtenues sont loin des performances crêtes des processeurs, cette écart est principalement du à l'irrégularité de l'application et des structures de données utilisées. Cette irrégularité empêche l'obtention de hautes performances pour, d'une part, l'existence de longues chaînes d'instructions dépendantes empêchant leur exécution en parallèle et, d'une autre part, l'irrégularité des structures de données empêchant le chargement (ou le préchargement) des données en parallèle. Dans cette thèse nous proposons plusieurs méthodes pour réduire l'effet de ces deux problèmes. Le Chapitre 1 introduit les motivations ainsi que les contributions de la thèse. Dans le Chapitre 2, nous présentons un état de l'art des différentes approches et architectures qui exploitent la surface de la puce différemment, en dédiant plus d'espace pour le calcul. Le Chapitre 3 présente une approche alternatives pour améliorer les performances des séquences d'instructions dépendantes. Dans le Chapitre 4, nous présentons les " load squared ", une méthode qui permet d'accélérer deux loads dépendants ne se trouvant pas dans les caches. Finalement, nous introduisons dans le Chapitre 5 une approche dans laquelle nous découplons explicitement le calcul des accès de donnée via une extension du langage C. Nous concluons dans le Chapitre 6.