Nantes Université

Evaluation de réseaux de neurones basés sur les graphes pour l’optimisation de l’efficacité énergétique des systèmes multiprocesseurs

Laboratoires IETR (équipe ASIC, Nantes) et LS2N (équipe DUKe, Nantes)

Mots-clés  Apprentissage automatique à base de graphes, Architectures multiprocesseursEncadrants   Sébastien Le Nours (Nantes Université), Christine Sinoquet (Nantes Université)

Contexte du projet de recherche L’accroissement de la complexité des architectures matérielles et logicielles des systèmes électroniques (doublement du nombre de transistors intégrables tous les 24 mois) combiné à la nécessité d’optimiser l’efficacité énergétique de ces systèmes impose la définition de nouveaux paradigmes de conception. Dans ce contexte, l’introduction de méthodes d’apprentissage automatique représente une solution à fort potentiel pour permettre de maîtriser la complexité de conception et aboutir à des solutions optimisées, conduisant à l’émergence de flots de conception assistés par l’intelligence artificielle. 

Les méthodes d’apprentissage automatique basées sur les graphes ont reçu récemment un intérêt fort au sein de la communauté des concepteurs de circuits [SSN23]. Elles restent cependant encore peu évaluées pour la conception d’architectures matérielles et logicielles de systèmes multiprocesseurs pour lesquels l’efficacité énergétique se doit d’être optimisée.
Dans le cadre d’une collaboration entre les équipes ASIC de l’IETR et DUKe du LS2N, l’objectif de ce stage est de contribuer à développer et évaluer un modèle de réseau de neurones sur graphes (Graph Neural Network, GNN) utilisé pour l’exploration et l’optimisation d’architectures multiprocesseurs sous des contraintes de performance et d’énergie.  

Dans le cadre de ce travail de Master, nous étudierons des architectures multiprocesseurs initialement spécifiées par (i) une application logicielle représentée au moyen d’un graphe Ga spécifiant le degré de parallélisme entre les différentes tâches de l’application, et (ii) un graphe Gu des relations entre unités de calcul précisant aussi la nature de ces relations (e.g., point à point, mémoire partagée). On cherchera alors à optimiser l’allocation des tâches de l’application aux unités de calcul, conduisant à améliorer les performances et la consommation d’énergie de l’architecture multiprocesseur. 

Méthodologie et résultats attendus Dans le cadre de ce travail, l’approche d’apprentissage basée sur les graphes doit permettre d’identifier des solutions minimisant l’activité des ressources de calcul et de mémorisation, ce au sein de plates-formes dédiées au traitement intensif de données de type GPU (Graphical Processing Units) utilisées dans de nombreuses applications industrielles. Compte tenu des expertises complémentaires des équipes impliquées, ce stage permettra d’appréhender conjointement des cas concrets d’applications et d’architectures (pour lesquelles les données de simulations sont d’ores et déjà disponibles ou pourront être générées) et de contribuer à la définition de méthodes originales du domaine de l’apprentissage automatique basé sur les graphes.

Lors des travaux de stage préliminaires co-encadrés par l’IETR et le LS2N [G24], un premier modèle utilisant les GNN a été proposé afin de permettre l’estimation des performances et de la consommation de systèmes multiprocesseurs. Ce modèle a été développé et validé sur un jeu limité de données issues de mesures sur un prototype réel. Dans le cadre du présent travail de Master, nous envisageons de poursuivre la caractérisation et la validation du modèle proposé en le confrontant à un jeu de données plus conséquent. Ces données seront créées de manière synthétique complétant ainsi les mesures sur des cibles réelles. Cette approche permettra d’entraîner le modèle proposé sur un jeu de données plus important afin de le rendre plus précis et robuste. Ce modèle sera évalué pour différents cas d’étude représentatifs de systèmes multiprocesseurs. Ces travaux contribueront à la préparation d’un article scientifique pour une conférence du domaine de recherche. 


Le stage permettra de consolider les travaux menés à base de GNNs. L’IETR a récemment obtenu des gains significatifs dans l’optimisation énergétique d’applications de calcul intensif sur des cibles multiprocesseurs [DNP22, DNH23]. Ce travail permettra donc d’encore améliorer le processus d’optimisation mis en place, et ce par l’introduction de méthodes originales basées sur les méthodes à base de GNNs.

[DNH23] Dariol, Q., Le Nours, S., Helms, D., Stemmer, R., Pillement, S. and Grüttner, K. (2023). Fast Yet Accurate Timing and Power Prediction of Artificial Neural Networks Deployed on Clock-Gated Multi-Core Platforms. In Proceedings of the DroneSE and RAPIDO: System Engineering for constrained embedded systems (RAPIDO ’23).

[DNP22] Dariol, Q., Le Nours, S., Pillement, S., Stemmer, R., Helms, D., Grüttner, K. (2022). A Hybrid Performance Prediction Approach for Fully-Connected Artificial Neural Networks on Multi-core Platforms. Embedded Computer Systems: Architectures, Modeling, and Simulation (SAMOS 2022).

[G24] Ghrayeb, Z. (2024). Energy Efficiency Optimization of Multiprocessor Systems with Graph-based Machine Learning Methods. Master internship report. Nantes University. 

[SSN23] Sánchez, D., Servadei, L., Naz Kiprit, G., Wille, R., and Ecker, W. (2023). A Comprehensive Survey on Electronic Design Automation and Graph Neural Networks: Theory and Applications. ACM Trans. Des. Autom. Electron. Syst. 28, 2, Article 15, March 2023.

Environnement du projet

Ce projet se déroulera au laboratoire IETR à Polytech Nantes. Ce groupe de recherche possède une longue expertise dans le domaine de la conception et de la modélisation de systèmes embarqués. Le stage est organisé en étroite collaboration avec les membres du laboratoire LS2N. L’étudiant stagiaire sera également associé à d’autres activités des groupes de recherche : réunions de groupe, séminaires, événements sociaux.

La durée du projet est comprise entre 5 et 6 mois, démarrant entre février et avril 2025.
Selon la réglementation, l’indemnité de stage est d’environ 600 euros par mois.

Profil de la personne candidate

Ce stage s’adresse à un.e étudiant.e de Master 2, ou étudiant.e de 5ème année d’école d’ingénieur, en informatique et/ou électronique.
Les compétences requises sont :
– Apprentissage machine,
– Réseaux de neurones à base de graphes,
– Architectures matérielles et logicielles,
– Ecriture et lecture en anglais,
– Rigueur en programmation en informatique (Python)
– Rigueur dans le suivi d’un protocole expérimental et dans sa réalisation
– Capacités de reporting sur ses travaux.

Pour candidater, veuillez envoyer s’il vous plaît un email à sebastien.le-nours@univ-nantes.fr
  et christine.sinoquet@univ-nantes.fr, avec votre CV, une lettre de motivation, vos relevés de notes de l’année dernière et de l’année en cours, les contacts de personnes référentes.

Contacts

Sébastien Le Nours
sebastien.le-nours@univ-nantes.fr
Polytech Nantes, rue Christian Pauc, 44306 Nantes, France
Christine Sinoquet
christine.sinoquet@univ-nantes.fr
LS2N, 2 rue de la Houssiniere, 44322 Nantes, 44306 Nantes, France

Leave a Reply

Your email address will not be published. Required fields are marked *