Étude des performances de calcul et de communication du processeur CELL
De Ensiwiki.
Sommaire |
Etude des performances de calcul et de communication du processeur CELL
| Labo | TIMA |
| Equipe | System Level Synthesis |
| Encadrants | Paul.Amblard@imag.fr,Frederic.Petrot@imag.fr
|
Contexte scientifique et technologique
Obtenir des processeurs plus performants est une préoccupation générale. Elle reçoit plusieurs réponses selon les constructeurs. Processeurs à plusieurs coeurs identiques sur la même puce, processeurs spécialisés (par exemple en graphismes), puces hétérogènes à base de processeurs différents. Le CELL appartient à cette dernière classe. Il est utilisé par les 3 sociétés qui l'ont conçu - IBM pour faire le super calculateur Roadrunner (http://www.top500.org/system/9485), - Sony pour faire des consoles de jeux Playstation 3, (81 800 000 références disponibles selon Google) - Toshiba pour faire des systèmes audio-visuels grand public (http://www.cnet.com/2300-1_1-10001665.html)
Mais la programmation de telles machines très "taillées sur mesure" ne peut, parfois, plus se faire dans un langage évolué standard, en ignorant les caractéristiques architecturales.
Compétences attendues
La programmation sur CELL demande une connaissance de la programmation usuelle C/Linux. Mais il faut au début du stage acquérir des compétences complémentaires sur deux niveaux :
- l'architecture interne du CELL et ses possibilités,
- la bibliothèque de fonctions accessibles depuis C permettant d'activer les ressources matérielles spécifiques.
Contexte du travail
Dans l'équipe "System Level Synthesis" on ne développe pas de jeux pour la Playstation 3 (:-() mais on se sert du CELL comme élément de comparaison par rapport aux Multi-Processor System-on-Chip (MPSoC) en cours d'études.
Sujet
Le sujet proprement dit consiste à programmer une application sur CELL (par exemple encodage ou décodage Mjpeg) et, surtout, à en étudier les performances, le comportement. On peut partir d'une version parallélisée déjà existante pour d'autres multiprocesseurs. On peut par exemple penser à comparer une version programmée "sans connaître l'architecture" avec une version conportant "quelques" optimisations de calcul ou de communication tenant compte des fonctionnalités spécifiques du Cell.
Résultats attendus
Les résultats attendus sont, outre que le programme "marche", principalement dans l'étude de performances du logiciel considéré.

