F3CAS: Repenser la simulation d’architecture des ordinateurs accélérée sur FPGA pour l’exploration de stockage des données – F3CAS
F3CAS : concilier utilisabilité et performances dans la simulation d'architectures SoC accélérée par FPGA
F3CAS propose un nouveau paradigme combinant l’accélération FPGA avec un niveau d’abstraction logiciel, afin de permettre une simulation architecturale à la fois rapide, précise et facile à utiliser. Le projet montre que des mécanismes microarchitecturaux complexes — tels que les politiques de remplacement de cache — peuvent être modularisés et explorés efficacement sans nécessiter de modifications matérielles invasives.
Vers une simulation architecturale accélérée par FPGA à la fois performante et facile à utiliser
Les systèmes informatiques modernes font face à un goulot d’étranglement critique : plus de la moitié de l’énergie et des performances du système sont désormais dominées par les mouvements de données et le comportement de la hiérarchie mémoire. Alors que la mise à l’échelle technologique ralentit, l’innovation architecturale — en particulier au niveau des systèmes mémoire — est devenue le principal levier d’amélioration des performances. Cependant, l’évaluation de nouvelles idées architecturales reste complexe. Les simulateurs logiciels offrent une grande flexibilité, mais sont prohibitivement lents, tandis que les plateformes accélérées par FPGA offrent de meilleures performances, au prix d’une forte expertise matérielle et de modifications RTL complexes. Cela crée un compromis fondamental entre utilisabilité et performance. L’objectif du projet F3CAS est de combler cet écart en permettant : - une simulation rapide et cycle-précise grâce à l’accélération FPGA - une grande facilité d’utilisation via un niveau d’abstraction logiciel - une intégration modulaire des composants microarchitecturaux Le projet se concentre sur l’exploration de la hiérarchie mémoire, en utilisant les politiques de remplacement de cache comme cas d’usage représentatif et exigeant. L’objectif global est de démocratiser l’accès à des outils de simulation haute performance et d’accélérer l’innovation en architecture des ordinateurs.
L’approche F3CAS combine une simulation accélérée par FPGA avec une couche d’abstraction modulaire qui découple les mécanismes microarchitecturaux des implémentations matérielles sous-jacentes.
La contribution principale réside dans l’introduction d’une unité de politique de remplacement (Replacement-Policy Unit, RPU), une interface modulaire qui encapsule la logique de remplacement de cache et permet une intégration transparente dans un cadre de simulation accélérée par FPGA (FireSim/Chipyard).
Les principales innovations méthodologiques incluent :
- une intégration insensible à la latence : découpler l’exécution de la politique du timing du cache afin de préserver la justesse de la simulation
- une co-conception matériel–logiciel : permettre l’implémentation des politiques sous différentes formes (logiciel, RTL, HLS, processeur soft-core)
- une abstraction modulaire : isoler les composants microarchitecturaux pour éviter des modifications RTL invasives
- une simulation système complet sur FPGA : exploiter FireSim pour évaluer des charges de travail réalistes avec une précision cycle
Le cadre prend en charge plusieurs politiques de remplacement de cache (Random, LRU, SHiP, Hawkeye), permettant une exploration systématique des performances, de l’utilisation des ressources et des compromis de conception.
Le projet F3CAS démontre avec succès que l’exploration microarchitecturale modulaire est réalisable dans des environnements de simulation accélérée par FPGA.
Les principaux résultats incluent :
- la conception et l’implémentation de l’abstraction RPU, permettant une intégration « plug-and-play » des politiques de remplacement de cache sans modification du contrôleur de cache
- plusieurs stratégies d’implémentation (logiciel, RTL, HLS, soft-core), mettant en évidence les compromis entre flexibilité, performance et utilisation des ressources FPGA
- une évaluation expérimentale complète sur différentes configurations de processeurs (Rocket, BOOM) et charges de travail
- une analyse quantitative du surcoût de simulation, montrant que la modularité peut être atteinte avec un impact limité sur les performances
- l’évaluation de politiques avancées (SHiP, Hawkeye), démontrant une amélioration de l’efficacité du cache et des performances
Les résultats confirment que l’innovation architecturale peut être significativement accélérée en combinant une conception modulaire avec une simulation sur FPGA, sans compromettre la précision.
Le projet F3CAS ouvre plusieurs perspectives prometteuses en recherche et développement.
Tout d’abord, le paradigme de simulation modulaire proposé pourrait être étendu au-delà des politiques de remplacement de cache à d’autres composants microarchitecturaux, notamment :
- les mécanismes de prélecture (prefetching) du LLC
- les contrôleurs mémoire DRAM
Ensuite, l’approche peut être étendue à des architectures multicœurs plus complexes.
Enfin, nous n’avons fait qu’effleurer le potentiel de F3CAS basé sur des soft-cores. Nous pensons qu’il existe une opportunité importante de réduire davantage le surcoût actuel d’accélération en spécialisant l’architecture du soft-core à l’aide d’extensions d’instructions spécifiques au domaine.
Dans les architectures modernes de calcul mobile à haute performance, plus de 60% de l'énergie est dépensée dans le stockage et le transport des données. Cependant, les outils d'évaluation existants présentent des limites fondamentales qui font obstacle à l'innovation dans les systèmes de mémoire. En conséquence, ce projet propose un nouveau paradigme qui permettra de réaliser des simulations d'architecture de calcul conviviales, rapide, fiables (F3CAS) et adaptées à l'exploration de nouvelles architectures mémoire. F3CAS combine de façon unique l'accélération FPGA avec des processeurs soft pour encapsuler le simulateur dans une abstraction de type logiciel. Les bénéfices de la simulation F3CAS seront démontrés dans l'évaluation de technologies émergentes de mémoires non volatile (NVM), telles que la Spin-Transfer Torque (STT) RAM.
Coordination du projet
David Novo (Laboratoire d'Informatique, de Robotique et de Microélectronique de Montpellier)
L'auteur de ce résumé est le coordinateur du projet, qui est responsable du contenu de ce résumé. L'ANR décline par conséquent toute responsabilité quant à son contenu.
Partenariat
LIRMM Laboratoire d'Informatique, de Robotique et de Microélectronique de Montpellier
Aide de l'ANR 230 170 euros
Début et durée du projet scientifique :
septembre 2021
- 48 Mois