Co- Directeur : Frédéric Rousseau, TIMA, Université Grenoble-Alpes
←
→
Transcription du contenu de la page
Si votre navigateur ne rend pas la page correctement, lisez s'il vous plaît le contenu de la page ci-dessous
Titre : CSAM : Maitrise de bout en bout d'une Chaine de Synthèse d’Accélérateurs Matériels pérennes dans un contexte de défense Directeur : Loïc Lagadec, Lab-STICC/ENSTA Bretagne Co- Directeur : Frédéric Rousseau, TIMA, Université Grenoble-Alpes Note : Cette thèse s’inscrit dans le cadre du club des partenaires défense de l’UBL. Elle fait suite à deux thèses, une dans chacun des deux laboratoires : Alban Bourge en 2016 [T1], et Théotime Bollengier en 2018 [T2]. 1. Objet de la thèse La recherche de performances (puissance de calcul, faible consommation, cout marginal contrôlé, adaptabilité à des contextes changeants) justifie l’emploi de technologies reconfigurables telles que les FPGAs. En revanche, ces technologies souffrent d’une obsolescence rapide, difficilement compatible avec un temps de maintient en condition opérationnelle long. Cette thèse vise à solutionner cette faiblesse par une approche overlay. 2. Descriptif de la thèse La thèse adresse les méthodes de pérennisation des développements matériels dans un contexte de défense, qui se caractérise par un temps de maintien en conditions opérationnelles (MCO) bien plus long que les enjeux typiques du civil. Ces travaux répondent ainsi à une préoccupation duale, puisque la problématique impacte à différents niveaux les métiers SIO, SSI et AESS des pôles ASC, SSI et SdS, mais concerne également des domaines industriels (transport, nucléaire, spatial, etc.) à MCO long. Il s’agit de lutter contre l’obsolescence matérielle en offrant des performances réalistes et de s’affranchir du stockage préventif de dispositifs sur-numéraires, destinés à remplacer les éléments défaillants au cours du temps. Pour cela, il convient de savoir porter une application sur des supports matériels évolutifs, tout en garantissant une équivalence de comportement/caractéristiques permettant la cohabitation transparente de générations différentes. Le support matériel considéré dans cette thèse est le FPGA, qui présente les propriétés adéquates pour une utilisation militaire et/ou spatiale (version durcie, rapport cout/performance excellent, temps de conception raisonnable, ...). En revanche, les FPGAs ne disposent pas de modèles de programmation normalisés comme on en rencontre dans le monde logiciel (langages de programmation indépendants du support d’exécution, compilateur multi cible, jeu d’instructions normalisées). La conséquence en est une non compatibilité des sources aux binaires, le fort couplage entre cible et outils de compilation/synthèse, la grande difficulté de virtualisation (à plus forte raison sur des architectures hétérogènes) qui constitue un frein aux approches de type « Platform As a Service » (PAaS)/cloud. Ainsi, les bénéfices classiques des approches PAaS/cloud : la pleine exploitation des ressources, le partage multi tenants, l’équilibrage de charge, la migration de tâches, etc. ne sont que peu ou pas présents dans le contexte FPGA[1, 2 3]. Une solution partielle au problème est fournie par la notion d’overlay [4,5], qui induit en revanche souvent des performances dégradées [6,7], par rapport à une implémentation nue.
L’enjeu est donc l’obtention de solutions efficaces (accélération de calcul via FPGA, plein usage des ressources), adaptables (évolutions déclenchées à distance) dont les différentes générations pourront inter opérer de façon transparente. Ainsi l’approche proposée doit garantir que l’ajout, le remplacement, ou le retrait de dispositifs seront possibles sans impact lourd. 3. Programme de la thèse A. Vue globale La thèse balaiera tout d’abord l’ensemble des alternatives présentes dans l'état de l'art pour garantir la pérennité des développements matériels. Une problématique sensible est la combinaison d’une rétro compatibilité des nouveaux dispositifs (capacité à fonctionner avec les anciens dispositifs) avec une compatibilité ascendante des dispositifs déjà en circulation (capacité à ignorer de futures versions incompatibles). Pour cela, le doctorant s’appuiera sur une double expertise, présente au sein des laboratoires respectifs des deux co-directeurs de thèse, et enchâssée dans deux outils : Augh et Biniou. • La première, développée à TIMA, est la synthèse de haut niveau (C vers VHDL), décorée de façon à permettre une contrôlabilité des architectures produites. L'extraction de contexte à chaud est ainsi rendue possible pour une migration de tâche entre cibles. • La seconde solution est la virtualisation des cibles via un mécanisme d'overlay (FPGA sur FPGA), complété par un support de programmation (Biniou), de déploiement (ZeFF), et d'exploitation. Un seul environnement de programmation est alors nécessaire, mais les performances sont très dépendantes de la nature de l'overlay. La thèse visera à converger vers une architecture overlay à gros grain, hétérogène. Cette architecture sera évaluée pour une classe applicative donnée (et idéalement représentative de problèmes de défense). Cette approche relève de l'Adéquation Algorithme Architecture – telle qu'adressée par exemple par le GDR ISIS, Thème C [9] - avec pour objectif de définir une bonne architecture overlay. Cette architecture embarquera des unités fonctionnelles produites par Augh. Elle devra être dimensionnée avec soin pour permettre d’en minimiser le coût. A terme, l’extraction automatique des paramètres critiques pour la conception de l’overlay, à partir d’un jeu d’applications de référence permettra l’obtention d’une solution de bout en bout. L’ambition de ce travail est ainsi d'obtenir une solution : • Pérenne (l'overlay est re-synthétisable sur tout FPGA) • Performante (resynthèse sur les derniers FPGAs, adéquation aux applications) • Permettant de virtualiser une plateforme hétérogène (une flotte de FPGAs hétérogènes) en une plateforme homogène et redimensionnable à façon (OVERLAY) • Garantissant de préserver l’existant applicatif (aucun besoin de resynthétiser les applications)
La démonstration de l’approche pourra s’appuyer sur les moyens techniques présents dans les deux laboratoires, et en particulier : - un émulateur de circuits (120 millions de portes) en cours d’acquisition à l’ENSTA Bretagne dans le cadre du CPER Cyber –SSI de la région Bretagne, qui permettra d’évaluer différentes mise en œuvre d’un nœud overlay, - un support de virtualisation massif (Hynesim) permettant de tester le passage à l’échelle des solutions proposées. B. Cibles de publication Les publications visées sont d’une part des workshops internationaux qui permettent d’avoir un retour rapide sur le travail : - Reconfigurable Architectures Workshop (RAW) - Applied Reconfigurable Computing (ARC) Mais aussi des conférences internationales ou symposia de très bon niveau et sélectifs tels que : - International Conference on Field-Programmable Logic and Applications (FPL) - ACM/SIGDA International Symposium on Field-Programmable Gate Arrays (FPGA) - IEEE International Symposium on Programmable Custom Computing Machines (FCCM) - International Conference on Field-Programmable Technology (FPT) Et des revues comme : - ACM Transactions on Reconfigurable Technology and Systems (TRETS) - IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems (TCAD) - Journal of Systems Architecture (JSA) C. Planning de la thèse La première année sera répartie en une première étude de l’état de l’art (phase 1, environ 6 mois) et la prise en main des deux environnements logiciels développés dans les laboratoires (phase 2). A l’issue de cette année, une première publication sera rédigée dont l’objectif sera d’une part de former le doctorant à l’écriture scientifique, mais aussi de mettre en œuvre la complémentarité des deux technologies pour produire un circuit sur FPGA. Cette publication offrira cependant une première visibilité, même mesurée, des travaux. En particulier, on cherchera à figer le cadre expérimental et méthodologique. La deuxième année sera centrée sur l’articulation entre les environnements pour permettre la définition d’un overlay gros grain encapsulant des IP issues de Augh (phase 3). Cela nécessitera une identification préliminaire d’applications de référence. Cette étape donnera lieu à une publication en conférence. Au cours de cette année la définition des critères de
l’architecture et une première corrélation entre ceux-ci et les caractéristiques des applications seront proposées. Au cours de la troisième année, une automatisation sera proposée pour permettre l’extraction des paramètres utiles en fonction des applications (phase 4). Il faudra aussi réfléchir à la généralisation de la méthode qui devra s’appliquer aux FPGAs actuels mais aussi aux générations futures. Cette nouvelle contribution donnera lieu à une publication en conférence. La phase 5 sera centrée sur une activité de rédaction. A la confluence des deux publications en conférence, une publication sera soumise en revue ; elle intégrera des expérimentations plus complètes, et un focus sur l’évolution des outils de programmation de l’overlay. Cet ensemble de publications facilitera la rédaction de la thèse qui occupera les derniers mois de la thèse. D. Bibliographie [1] A. Iordache, G. Pierre, P. Sanders, J. G. D. F. Coutinho and M. Stillwell, High Performance in the Cloud with FPGA Groups, 2016 IEEE/ACM 9th International Conference on Utility and Cloud Computing (UCC), Shanghai, 2016, pp. 1-10. [2] S. Yazdanshenas and V. Betz, Quantifying and mitigating the costs of FPGA virtualization, 2017 27th International Conference on Field Programmable Logic and Applications (FPL), Ghent, 2017, pp. 1-7. doi: 10.23919/FPL.2017.8056807 [3] Amazon Web Services. Developing Cloud Scale FPGA Accelerations Using AWS F1. Online : https://h2rc.cse.sc.edu/slides/amazon.pdf [4] A. Brant and G. Lemieux. ZUMA: An open FPGA overlay architecture. In Field- Programmable Custom Computing Machines (FCCM), 2012 IEEE 20th Annual International Symposium on, pages 93–96, 2012. [5] J. Coole and G. Stitt. Intermediate fabrics: Virtual architectures for circuit portability and fast placement and routing. In Hardware/Software Codesign and System Synthesis (CODES+ISSS), 2010 IEEE/ACM/IFIP International Conference on, pages 13–22, Oct 2010. [6] J. Coole and G. Stitt. Adjustable-cost overlays for runtime compilation. In Field- Programmable Custom Computing Machines (FCCM), 2015 IEEE 23rd Annual International Symposium on, pages 21–24, May 2015. [7] D. Koch, C. Beckhoff, and G. Lemieux. An efficient FPGA overlay for portable custom instruction set extensions. In Field Programmable Logic and Applications (FPL), 2013 23rd International Conference on, pages 1–8, Sept 2013. [8] So H.KH., Liu C. (2016) FPGA Overlays. In: Koch D., Hannig F., Ziener D. (eds) FPGAs for Software Programmers. Springer, Cham. DOIhttps://doi.org/10.1007/978-3-319-26408- 0_16 [9] GDR 720 ISIS (Information, Signal, Image et ViSion) Thème C –Algorithe-Architecture en traitement du signal et des images. http://www.gdr-isis.fr/themes/theme-c.html
4. Antériorité de l’équipe Comme énoncé précédemment, le doctorant s’appuiera sur une double expertise, présente au sein des laboratoires respectifs des deux co-directeurs de thèse : • La première (Augh), développée à TIMA consiste à outiller la synthèse FPGA de façon à permettre l'extraction d'état lors l'exécution [A]. Cet Etat est ensuite ré-injecté à la demande, éventuellement sur une autre cible FPGA implémentant la même architecture applicative. Cela permet de migrer une tache entre plusieurs cibles technologiques, donc de faire évoluer progressivement une flotte de cartes FPGA sans interruption de service. C'est une solution très efficace [B] mais qui requiert de maitriser les différents flots de synthèse associés aux différents FPGAs. Ces travaux correspondent à la thèse [T1]. • La seconde solution (Zeff), développée à l'ENSTA Bretagne - en partie sur des fonds MRIS - consiste à synthétiser une même architecture reconfigurable sur différentes cibles FPGA [C]. Cette architecture, qualifiée d'overlay, permet une compatibilité binaire entre cibles différentes, possède son propre outillage de synthèse, de monitoring et d'exploitation (migration de tache, debug, équilibrage de charge, etc.) [D]. Il s'agit une solution très générique, mais qui peut engendrer des surcoûts importants suivant la nature de l'overlay. Ces travaux correspondent à la thèse [T2]. Publications de référence de l’équipe: [A] A. Prost-Boucle, O. Muller, F. Rousseau, Fast and standalone Design Space Exploration for High-Level Synthesis under resource constraints. In Journal of Systems Architecture - Embedded Systems Design 60(1): 79-93 (2014) [B] A. Bourge, O. Muller, F. Rousseau, Generating Efficient Context-Switch Capable Circuits Through Autonomous Design Flow, In ACM Transactions on Reconfigurable Technology and Systems, Vol. 10, Issue 1, art. 9, December 2016, http://dx.doi.org/10.1145/2996199. [C] M. Najem, T. Bollengier, J-C. Le Lann, L. Lagadec, Extended overlay architectures for heterogeneous FPGA cluster management. Journal of Systems Architecture - Embedded Systems Design 78: 1-14 (2017) [D] L. Lagadec, C. Teodorov, J.-C. Le Lann, D. Picard, E. Fabiani, Model-driven toolset for embedded reconfigurable cores: Flexible prototyping and software-like debugging. Science of Computer Programming Vol. 96: 156-174 (2014) Thèses antérieures connexes : [T1] Alban Bourge, « Changement de contexte matériel sur FPGA, entre équipements reconfigurables et hétérogènes dans un environnement de calcul distribué », Nov. 2016. http://theses.fr/2016GREAT068 - thèse TIMA [T2] Théotime Bollengier, « Du Prototypage à l’Exploitation d’Overlays FPGA », Jan. 2018 Thèse ENSTA Bretagne
Vous pouvez aussi lire