Le prédicteur de branchement 2-Ahead de Zen 5 : comment une idée vieille de 30 ans permet de nouvelles astuces
(chipsandcheese.com)Le prédicteur de branchement 2-Ahead de Zen 5 : comment une idée vieille de 30 ans permet de nouvelles astuces
-
Introduction
- L’architecture Zen 5 d’AMD constitue une refonte complète des précédentes architectures Zen
- L’un des changements les plus importants est la nouvelle unité de prédiction de branchement 2-Ahead
- Cette idée trouve son origine dans un article publié il y a 30 ans
-
L’importance du prédicteur de branchement
- Un ordinateur stocke les programmes en mémoire puis les exécute
- Le processeur se divise entre une partie front-end qui récupère et prépare les instructions, et une partie back-end qui les exécute
- Les sauts conditionnels représentent un défi majeur pour remplir le pipeline
- Une mauvaise prédiction oblige à vider le pipeline puis à redémarrer
- Le processeur doit donc prédire la séquence d’instructions du programme avec la plus grande précision possible
-
L’arrivée du prédicteur de branchement 2-Ahead
- Il s’agit d’une idée proposée dès le début des années 1990
- Des méthodes plus efficaces, comme le prédicteur TAGE, ont ensuite été développées
- Mais pour améliorer les performances monocœur, le prédicteur de branchement 2-Ahead revient sur le devant de la scène
-
Les avantages de l’architecture x86
- x86 tire un plus grand bénéfice de la prédiction de branchement 2-Ahead que d’autres ISA à instructions de longueur fixe
- x86 nécessite un traitement plus complexe pour déterminer les frontières entre instructions
- Zen 5 utilise deux pipelines de fetch de 32 octets et un cluster de décodage 4-wide
-
L’implémentation décrite dans l’article de Seznec
- L’article de Seznec explique comment mettre en œuvre un prédicteur de branchement 2-Ahead
- Zen 5 suit les recommandations de cet article
- Il utilise deux pipelines de fetch de 32 octets et un op cache dual-port 6-wide
- Il s’appuie sur les BTB L1 et L2 pour améliorer la précision de la prédiction
-
Conclusion
- Le prédicteur de branchement 2-Ahead de Zen 5 constitue une évolution majeure de l’architecture Zen
- Ce nouveau prédicteur devrait beaucoup aider le développement des futurs cœurs Zen
Le récapitulatif de GN⁺
- Le prédicteur de branchement 2-Ahead de Zen 5 modernise une idée vieille de 30 ans
- Cette technologie améliore les performances en augmentant la précision de prédiction des instructions du processeur
- Elle est particulièrement utile pour gérer la complexité propre à l’architecture x86
- Cet article intéressera les personnes qui suivent l’architecture CPU et l’optimisation des performances
- Parmi les projets comparables, on peut citer l’architecture Golden Cove d’Intel
1 commentaires
Commentaire Hacker News