The growing demand for real-time processing in artificial intelligence applications, particularly those involving Convolutional Neural Networks (CNNs), has highlighted the need for efficient computational solutions. Conventional processors, very often, fall short in balancing performance, power consumption, and latency, especially in embedded systems and edge computing platforms. Field-Programmable Gate Arrays (FPGAs) offer a promising alternative, combining high performance with energy efficiency and reconfigurability. The presented framework addresses the complex and demanding computations of CNNs on FPGAs maintaining full precision in all neural network parameters. Specifically, our framework is based on Darknet which is very widely used for the design of CNNs and allows the designer, by using a similar input to that given to Darknet, to efficiently implement a CNN in a heterogeneous system comprising of CPUs and FPGAs. When compared with the FPGA frameworks that support quantization, our solution aims to offer similar performance and/or energy efficiency without any degradation on the NN accuracy.
- ID de l'article : 2510.13362
- Titre : Energy-Efficient FPGA Framework for Non-Quantized Convolutional Neural Networks
- Auteurs : Angelos Athanasiadis¹, Nikolaos Tampouratzis², Ioannis Papaefstathiou¹
- Institutions : ¹Université Aristote de Thessalonique, ²Université Hellénique Internationale
- Classification : cs.AR (Architecture Informatique)
- Lien de l'article : https://arxiv.org/abs/2510.13362
Avec la croissance des exigences de traitement en temps réel dans les applications d'intelligence artificielle, en particulier celles impliquant des réseaux de neurones convolutifs (CNN), le besoin de solutions informatiques efficaces devient de plus en plus pressant. Les processeurs traditionnels présentent souvent des performances insuffisantes pour équilibrer performance, consommation d'énergie et latence, notamment sur les systèmes embarqués et les plates-formes informatiques en périphérie. Les réseaux logiques programmables par l'utilisateur (FPGA) offrent une alternative prometteuse, combinant haute performance, efficacité énergétique et reconfigurabilité. Le cadre proposé dans cet article traite les exigences informatiques complexes des CNN sur FPGA tout en maintenant la précision complète de tous les paramètres du réseau de neurones. Ce cadre est basé sur le framework de conception CNN Darknet largement utilisé, permettant aux concepteurs d'utiliser des entrées similaires à Darknet pour implémenter efficacement les CNN dans des systèmes hétérogènes contenant CPU et FPGA. Par rapport aux cadres FPGA supportant la quantification, cette solution vise à fournir des performances et/ou une efficacité énergétique similaires sans réduire la précision du réseau de neurones.
Le problème fondamental que cette recherche vise à résoudre est comment implémenter efficacement des réseaux de neurones convolutifs non-quantifiés sur FPGA, en réalisant une haute performance et une efficacité énergétique tout en maintenant les paramètres en précision complète.
- Croissance des exigences de traitement en temps réel : Les applications d'IA, en particulier les applications CNN, exigent un traitement en temps réel croissant
- Limitations des processeurs traditionnels : Les CPU traditionnels présentent des insuffisances dans l'équilibre entre performance, consommation d'énergie et latence
- Défis de l'informatique embarquée et en périphérie : Les appareils aux ressources limitées nécessitent des solutions informatiques plus efficaces
- Perte de précision des méthodes de quantification : Les cadres FPGA existants se concentrent principalement sur les modèles quantifiés, ce qui réduit l'utilisation des ressources et la consommation d'énergie, mais souvent au détriment de la précision
- Complexité de la conception : Absence d'un processus de conception facile à utiliser et efficace
- Compromis entre performance et précision : Difficulté à réaliser une haute performance et une efficacité énergétique tout en maintenant la précision complète
Développer un cadre capable d'implémenter des CNN non-quantifiés sur FPGA, maintenant à la fois la haute précision du modèle et réalisant des performances et une efficacité énergétique exceptionnelles.
- Maintien de la Précision : En évitant la quantification et en conservant la précision complète, le cadre vise à maintenir la précision du modèle CNN
- Haute Productivité de Conception et Flexibilité : Basé sur le framework de conception CNN DarkNet largement utilisé, implémenté en C/C++ pur, supportant une gamme complète de FPGA du petit au grand
- Haute Performance : Exploite pleinement le parallélisme de tout FPGA pour accélérer le processus d'inférence CNN, assurant un traitement opportun et efficace
- Optimisation de l'Efficacité Énergétique : Optimisé pour l'efficacité énergétique de l'inférence CNN sur FPGA, applicable aux applications sensibles à la consommation d'énergie
La tâche étudiée dans cet article est l'implémentation d'une inférence CNN non-quantifiée efficace sur FPGA, avec en entrée les fichiers de configuration du modèle CNN (format similaire à Darknet), et en sortie une implémentation CNN haute performance sur un système hétérogène CPU-FPGA.
Selon la figure 1, le cadre adopte la conception architecturale suivante :
- Traitement d'Entrée : Importation d'un nouveau fichier cfg dans l'outil
- Prétraitement : Prétraitement parallèle utilisant OpenMP
- Analyseur : Analyse la structure du réseau, identifie les couches de convolution, déconvolution et autres couches
- Moteur de Calcul : Moteur de calcul HLS innovant comme composant central
- Traitement Parallèle : Traitement parallèle utilisant OpenMP
- Implémentation FPGA : Implémentation finale du réseau de neurones sur FPGA
Le moteur de calcul innovant utilise la technologie de synthèse de haut niveau (HLS), capable d'exécuter plusieurs opérations mathématiques en un seul cycle d'horloge, réalisant un débit et une performance relativement élevés.
Comme le montre la figure 2, le noyau FPGA HLS traite principalement les tâches de multiplication matricielle, qui constituent la pierre angulaire de presque toutes les implémentations CNN :
- Optimisation de la Mémoire : Utilise la BRAM interne combinée aux flux HLS pour optimiser les modèles d'accès à la mémoire sur puce
- Mécanisme de Traitement en Flux :
- Implémente un flux de données continu entre les éléments de traitement, sans stockage intermédiaire en BRAM
- Réduit la latence et les frais généraux de ressources
- Supporte l'exécution en pipeline et améliore le parallélisme
- Transfère directement les données entre les processus producteur et consommateur
- Utilisation de Multiples Canaux de Mémoire :
- Exploite plusieurs banques de mémoire et canaux dédiés connectés aux FPGA modernes
- Insère les instructions HLS appropriées pour allouer les transferts de données à un nombre paramétrable de banques/canaux de mémoire
- Exploite pleinement la bande passante disponible de chaque interface mémoire
- Transfert de Données Haute Bande Passante : Les transferts de données entre CPU et FPGA s'effectuent à largeur de données complète (512 bits) par cycle d'horloge, assurant une communication à haut débit entre les éléments de traitement et le sous-système mémoire
- Maintien de la Précision Complète : Contrairement aux méthodes de quantification existantes, ce cadre maintient la précision complète de tous les paramètres
- Optimisation du Traitement en Flux : Mécanisme innovant de traitement en flux réduisant la dépendance à la BRAM et améliorant l'efficacité d'utilisation des ressources
- Accès Mémoire Multi-Canaux : Exploite pleinement les caractéristiques de multiples canaux mémoire des FPGA modernes
- Processus de Conception Basé sur Darknet : Fournit une interface de conception familière et facile à utiliser
- FPGA Haut de Gamme : AMD Alveo U55C
- FPGA Embarqué : Kria KR260
- CPU de Comparaison : Intel Xeon E5-2620 v4 (8 cœurs) et ARM Cortex-A53 (4 cœurs)
- GPU de Comparaison : NVIDIA T4
- Dimensions Matricielles : M=2048, K=4096, N=16384
- Type de Données : FP32 (virgule flottante 32 bits)
- Objectif du Test : Sélection de dimensions matricielles non-pic pour démontrer la flexibilité de la méthode
- Performance : GFLOPS (milliards d'opérations en virgule flottante par seconde)
- Efficacité Énergétique : GFLOPS/Watt
- Ratio d'Accélération : Amélioration de performance par rapport à l'implémentation de référence et à l'implémentation CPU parallèle
- Par rapport à l'implémentation de référence : Amélioration de performance de 2 ordres de grandeur
- Par rapport au CPU ARM 4 cœurs : Amélioration de performance de 9 fois
- Amélioration de l'efficacité énergétique : 9 fois par rapport à la meilleure implémentation CPU parallèle
- Par rapport à l'implémentation de référence : Amélioration de performance d'environ 3 ordres de grandeur
- Par rapport au CPU Intel Xeon : Amélioration de performance de 10 fois
- Amélioration de l'efficacité énergétique : 34 fois par rapport à la meilleure implémentation CPU parallèle
- Par rapport au GPU NVIDIA T4 : Amélioration de l'efficacité énergétique de 3 fois (bien que T4 utilise un processus technologique plus avancé de 12 nm, tandis que U55C utilise 16 nm)
- Amélioration Significative de la Performance : Amélioration de performance d'ordre de grandeur réalisée sur toutes les plates-formes de test
- Performance Énergétique Exceptionnelle : Amélioration de l'efficacité énergétique de 34 fois réalisée en particulier sur Alveo U55C
- Avantage Technique : Dépasse l'efficacité énergétique du GPU même en cas de désavantage technologique
- Validation de Cohérence : Les résultats expérimentaux pour différentes dimensions matricielles sont entièrement cohérents avec les résultats présentés à la figure 3
L'article cite les travaux connexes suivants :
- Xu et al. (2024) : FLARE - Accélérateur CNN basse consommation en précision complète basé sur FPGA avec structure reconfigurable
- Chen et al. (2021) : Cadre d'apprentissage pour réseaux de neurones quantifiés n-bits orientés FPGA
- Latotzke et al. (2022) : Conception d'accélérateurs CNN haute performance en précision mixte sur FPGA
La principale distinction de cet article par rapport aux travaux connexes réside dans sa concentration sur l'implémentation non-quantifiée, réalisant haute performance et efficacité énergétique tout en maintenant la précision complète.
- Résolution Réussie des Besoins Critiques : Cette recherche résout avec succès les besoins critiques d'implémentation CNN efficace dans les environnements à consommation d'énergie limitée
- Équilibre entre Performance et Efficacité Énergétique : Le cadre CNN FPGA non-quantifié proposé combine avec succès haute performance et efficacité énergétique
- Garantie de Précision : Réalise haute précision en maintenant la précision complète des paramètres du réseau, sans compromettre l'utilisation des ressources ou la consommation d'énergie
- Validation Expérimentale de l'Efficacité : Les résultats expérimentaux valident l'efficacité du cadre, montrant une accélération significative du traitement d'inférence et une réduction substantielle de la consommation d'énergie
- Portée des Tests : Les expériences se concentrent principalement sur les opérations de multiplication matricielle, les résultats de test des réseaux CNN complets n'étant pas présentés en détail
- Vérification de la Précision : Bien que la préservation de la précision soit revendiquée, les données de comparaison de précision spécifiques font défaut
- Portée d'Applicabilité : L'applicabilité du cadre peut être limitée par les ressources FPGA et les exigences d'application spécifiques
L'article ne mentionne pas explicitement les directions de recherche futures spécifiques, mais on peut en déduire :
- Tests et validation de réseaux CNN plus larges
- Optimisation supplémentaire de l'efficacité énergétique
- Support de types de couches de réseau de neurones supplémentaires
- Innovation Technique :
- Réalisation d'implémentation CNN FPGA haute performance tout en maintenant la précision complète
- Conception innovante du moteur de calcul HLS, exploitant efficacement le traitement en flux et les multiples canaux mémoire
- Suffisance Expérimentale :
- Tests complets sur plusieurs plates-formes matérielles
- Expériences de comparaison avec CPU et GPU
- Mesures détaillées des métriques de performance et d'efficacité énergétique
- Valeur Pratique :
- Basé sur le framework Darknet largement utilisé, facile à adopter
- Support d'une gamme complète de FPGA du petit au grand
- Applicable aux scénarios d'application sensibles à la consommation d'énergie
- Pouvoir de Conviction des Résultats :
- Réalisation d'amélioration de performance d'ordre de grandeur
- Performance exceptionnelle sur plusieurs métriques
- Dépassement de l'efficacité énergétique du GPU même en cas de désavantage technologique
- Vérification d'Intégrité Insuffisante :
- Absence de résultats de test end-to-end de réseaux CNN complets
- Manque de données de vérification spécifiques de préservation de précision
- Tests principalement concentrés au niveau de la multiplication matricielle
- Sélection des Références de Comparaison :
- L'implémentation de référence peut ne pas être suffisamment optimisée
- Manque de comparaison avec d'autres cadres FPGA CNN avancés
- Détails Techniques Insuffisants :
- Description insuffisante des stratégies d'optimisation spécifiques de l'implémentation HLS
- Absence de données d'utilisation des ressources
- Analyse insuffisante de l'efficacité d'utilisation de la bande passante mémoire
- Analyse d'Applicabilité :
- Discussion insuffisante des limitations et de la portée d'applicabilité de la méthode
- Analyse insuffisante de l'extensibilité pour les CNN de différentes échelles
- Contribution Académique :
- Fournit une nouvelle solution pour l'implémentation CNN FPGA non-quantifiée
- Réalisation de haute performance tout en maintenant la précision, ayant une valeur théorique importante
- Valeur Pratique :
- Basé sur une chaîne d'outils mature, facilitant l'implémentation d'ingénierie
- Applicable aux applications d'IA informatique en périphérie et embarquée
- Reproductibilité :
- Basé sur les outils HLS standards et le framework Darknet open-source
- Trajectoire technique relativement claire, avec une certaine reproductibilité
- Applications d'IA en Périphérie : Scénarios sensibles à la consommation d'énergie avec exigences élevées de précision
- Traitement d'Images en Temps Réel : Tâches de traitement visuel nécessitant faible latence et haute performance
- Systèmes Embarqués : Appareils aux ressources limitées mais nécessitant des capacités d'IA
- Automatisation Industrielle : Applications d'IA industrielle avec exigences élevées de fiabilité et de précision
1 Xu, Y.; Luo, J.; Sun, W. Flare: An FPGA-Based Full Precision Low Power CNN Accelerator with Reconfigurable Structure. Sensors 2024, 24
2 Chen, J.; Liu, L.; Liu, Y.; Zeng, X. A Learning Framework for n-Bit Quantized Neural Networks Toward FPGAs. IEEE Transactions on Neural Networks and Learning Systems 2021, 32, 1067–1081.
3 Latotzke, C.; Ciesielski, T.; Gemmeke, T. Design of High-Throughput Mixed-Precision CNN Accelerators on FPGA. In Proceedings of the 2022 32nd International Conference on Field-Programmable Logic and Applications (FPL), 2022, pp. 358–365.
Évaluation Globale : Cet article est un travail ayant une valeur pratique dans le domaine des accélérateurs CNN FPGA, proposant une solution innovante maintenant la précision complète, avec des résultats expérimentaux impressionnants. Cependant, l'article a encore de la place pour amélioration en termes de vérification d'intégrité et de description des détails techniques. Pour les scénarios d'application d'IA nécessitant une haute précision, ce cadre présente des perspectives d'application importantes.