Thèse soutenue

Conception d’une plate-forme multi-FPGAs dans le cloud pour les applications de réseaux de neurones

FR  |  
EN
Auteur / Autrice : Wu Chen
Direction : Virginie Fresse
Type : Thèse de doctorat
Discipline(s) : Microélectronique
Date : Soutenance le 29/10/2021
Etablissement(s) : Lyon
Ecole(s) doctorale(s) : École doctorale Sciences Ingénierie Santé (Saint-Etienne)
Partenaire(s) de recherche : établissement opérateur d'inscription : Université Jean Monnet (Saint-Étienne ; 1969-....)
Laboratoire : Laboratoire Hubert Curien (Saint-Etienne ; 1995-....)
Jury : Président / Présidente : Dominique Houzet
Examinateurs / Examinatrices : Jean-Paul Jamont, Fan Yang Song
Rapporteur / Rapporteuse : Stefan Duffner, Stéphane Mancini

Résumé

FR  |  
EN

L’évolution rapide des réseaux de neurones a conduit à des architectures de réseaux nécessitant des capacités de calculs importantes avec des structures de réseau de plus en plus profondes. Le déploiement des réseaux de neurones sur des composants CPU/GPU fait face aux défis de la consommation énergétique. Pour faire face à ce problème de consommation énergétique, l’utilisation de circuits reconfigurables, comme les FPGA (Field Programmable Gate Array) est devenu une alternative de plus en plus envisagée. Cependant, le déploiement de réseaux sur des FPGA nécessite des outils de conception matérielle spécifiques et une solide expertise matérielle pour mener à bien leur conception jusqu’à l’implémentation finale sur FPGA. L’objectif de la thèse est de fournir une infrastructure de cloud computing basée sur des FPGAs dédiés aux ingénieurs en Machine Learning pour exécuter différents modèles de CNN (Convolutional Neural Network) sur diverses plateformes FPGA sans connaissance matérielle. L’infrastructure offre plusieurs IPs de CNN matériels, qui ont soit une structure haut débit via des mises en œuvre de pipeline, soit optimisent les ressources matérielles, ou ont une structure apportant un compromis entre les ressources et le temps de calcul. Ces IP sont conçus pour générer différentes architectures matérielles de CNN sur des FPGAs en fonction des exigences des ingénieurs en Machine Learning. L’infrastructure intègre également des modèles mathématiques, qui estiment les ressources nécessaires des IPs en fonction de leurs paramètres et sans passer par l’étape de synthèse (qui est très couteuse en temps). Cette estimation peut aider à allouer aux mieux les ressources FPGAs dans le cloud et choisir le ou les FPGAs appropriés. Enfin, un outil de quantification est conçu pour compresser la taille du réseau en diminuant la taille des données des CNN sur FPGA. Afin de compléter la fonctionnalité de l’infrastructure, plusieurs cas d’utilisation sont également développés pour couvrir tous les cas d’usages des applications associées aux réseaux de neurones. Cette thèse présente également le cycle de vie de cette infrastructure afin de mener une analyse approfondie du fonctionnement de l’infrastructure pour différents ingénieurs en Machine Learning dans divers cas d’utilisation. L’infrastructure proposée peut analyser les besoins des utilisateurs pour d’autres cas d’utilisation que l’inférence, déployer l’architecture matérielle du CNN sur le FPGA approprié et mettre en œuvre des techniques d’optimisations si nécessaire.