PROJET CAPS Compilation, Architecture, Parallélisme et Système
Projet CAPS 2 CAPS: Qui sommes nous ? 2 chercheurs, 2 professeurs, 9 doctorants deux activités imbriquées: architectures hautes-performances compilation orientée performance, outils et environnements de programmation
3 Un stage, une thèse en architecture/compilation !?
Projet CAPS 4 Que sont devenus les doctorants de CAPS ? Depuis 1997: S. Hily: Intel MRL, USA S. Chauveau, Philips National labs, Pays- Bas D. Truong, HP labs, USA E. Rohou, ST Microelectonics, USA P. Michaud, INRIA Y. Mével, Sogitec, Rennes
5 CAPS: que faisons nous ?
Projet CAPS 6 Architecture des microprocesseurs Comprendre les architectures hautes performances veille techno académiques et industriels Proposer les nouvelles architectures caches: skewed associative caches,.. prédiction de branchement:: Simultaneous Multithreading ..
Projet CAPS 7 Les outils pour l’architecture Simulation fine: cycle par cycle Tracer les applications Calvin2 + DICE Génération automatique de simulateurs
Projet CAPS 8 Les infrastructures logicielles pour la compilation La nécessité d’expérimenter ! Des systèmes prototypes: TSF : aide au portage des programmes Fortran orienté performance SALTO: manipulation de langage assembleur
Projet CAPS 9 Compilation: projets en cours Intégration du Case Base Reasoning dans TSF Compilation itérative pour les systèmes enfouis SALTO2: une infrastructure pour l ’optimisation bas-niveau Compilation et « low power »
10 Les stages proposés
Projet CAPS 11 Génération d’aléa irreproductible haut débit Besoin d’aléa irreproductible en CRYPTOGRAPHIE Méthodes actuelles: 1 Kbit/s logiciel 75Kbits/s matériel Les microprosseurs modernes: nombreux états non directement accessibles compteurs de cycles Peut-on utiliser le compteur de cycles pour générer de l’aléa irreproductible ?
Projet CAPS 12 cache secondaire skewed associatif et allocation de pages performance globale très dépendante du système mémoire Le cache secondaire: placement des pages en mémoire physique peut être malheureux 2 stratégies utilisées page coloring et bin hoping en général meilleures que placement aléatoire cache skewed associatif hybride de bin hoping et page coloring possible performance, avantage, etc de cette stratégie ?
Projet CAPS 13 Optimisation de la taille du fichier de registres d'un processeur superscalaire De plus en plus de registres, de plus en plus d ’instructions en // Taille, temps d’accès et consommation du fichier de registres croit avec nombre de ports et nombre de registres Idée: fichiers de registres pairs et fichiers de registres impair + spécialisation des port des unités fonctionnelles 2 fois moins de place Est-ce viable ?
Projet CAPS 14 Consommation électrique et poids forts nuls Consommation électrique: problème croissant systèmes enfouis, portables, PCs, stations, serveurs Consommation électrique: fonction du nombre de transistors et de « wires » activés Beaucoup de données « petites »: poids forts nuls Combien ? Comment en profiter ?
Projet CAPS 15 Étude du //isme d’instructions à partir d’un modèle de contraintes matérielles Processeur idéal: suit le graphe de flot de données Graphe de flot de données: les arcs représentent les dépendances de données entre instructions Complexité matérielle : dépend du nombre de nœuds et du degré d’un nœud Classique: nœud = 1 instruction Stage: nœud = bloc d’instructions
Projet CAPS 16 Optimisation d’application séquentielle sur un multiprocesseur intégré Plusieurs processeurs sur un même composant Chaque processeur a son propre cache Standard: une application séquentielle n’a accès qu’au cache du processeur qui l’exécute Stage: répartir l’application sur les caches de plusieurs processeurs
Projet CAPS 17 Contacts: André Seznec, François Bodin, Pierre Michaud {seznec, pmichaud,