-
-
-
-
-
-
-
HomeSite map
SoC/Offres d'emplois/Stages/2014-2015/ALSOC/Introduction de mécanismes de tolérance aux pannes dans une architecture de processeur « many-cores » à mémoire partagée cohérente. Print page

Introduction de mécanismes de tolérance aux pannes dans une architecture de processeur « many-cores » à mémoire partagée cohérente.

Contexte

Le projet TSAR (Tera Scale ARchitecture), initié par BULL, vise la définition et le prototypage d'une architecture de processeur many-cores supportant une mémoire partagée cohérente extensible jusqu'à 4096 coeurs, et supportant des systèmes d'exploitations utilisés dans le monde des PCs multi-cores. Le protocole DHCCP (Distributed Hybrid Cache Coherence Protocol) repose sur le principe général du répertoire global et s’appuie sur la technologie de micro-réseau intégré sur puce développée par le LIP6. Un premier prototype VLSI comportant 96 cœurs est en cours de réalisation au CEA-LETI. Un prototype FPGA a permis de booter les systèmes d’exploitation LINUX et NetBSD.


La tolérance aux pannes (défauts de fabrication, on pannes de vieillissement) permettant d’exploiter un composant matériel partiellement défectueux est déjà indispensables dans les composants mémoire ou dans les gros composants FPGA. Elle devient une nécessité pour les processeurs « many-cores ». L'architecture étant très régulière contient un grand nombre de composants identiques : coeurs de processeurs, ou bancs mémoires physiquement distribués. On peut donc imaginer un fonctionnement en mode dégradé, en désactivant les composants matériels défaillants, et en redéployant les applications logicielles sur la partie saine de l'architecture.

 

Objectif

L’introduction dans l’architecture TSAR de mécanismes – matériels et logiciels – permettant la reconfiguration automatique du matériel en cas de panne, alors que le processeur many-core est déjà en service, fait l’objet de la thèse de César Fuguet. Cette reconfiguration peut être réalisée à chaque démarrage du processeur par le « boot-loader ». Celui-ci doit mettre en œuvre différents mécanismes d’auto-test  pour détecter les composants défectueux. Il doit centraliser les résultats du test pour précisément localiser les défauts. Il doit reconfigurer le sous-système d’interconnexion pour isoler les parties défaillantes de l’architecture. Il doit enfin construire une description de la partie utilisable de l’architecture, avant de charger le système d’exploitation.

La définition, l’implémentation, et la validation d’un tel boot-loader distribué, permettant de reconfigurer les micro-réseaux 2D supportant la communication entre les caches L1 et les caches L2 sont actuellement réalisées. Le but du stage proposé est d’analyser les problèmes posés par l’extension de ces mécanismes de reconfiguration, de façon à traiter des pannes dans les micro-réseaux 3D permettant la communication entre les caches L2 et les caches L3 distribués, ou entre les caches L3 et la mémoire externe, ainsi que les pannes dans les caches L3 eux-même.

 

Encadrement

Le stage sera encadré par le professeur Alain Greiner et se déroulera dans les locaux du laboratoire LIP6.

LIP6 LIP6-SoC LIP6 CNRS UPMC