L’architecture de calcul CDNA 3 d’AMD
- AMD a une longue histoire d’efforts pour augmenter sa part de marché dans le calcul sur GPU.
- Depuis l’architecture Tesla de Nvidia, AMD continue de courir après.
- Terascale 3 est passé de VLIW5 à VLIW4, améliorant l’utilisation des unités d’exécution dans les charges de travail de calcul.
- GCN a remplacé Terascale et a mis l’accent sur des performances cohérentes à la fois pour le GPGPU et les applications graphiques.
- AMD a séparé le développement de ses architectures GPU en lignes distinctes, CDNA pour le calcul et RDNA pour le graphisme.
- CDNA 2 a apporté à AMD un succès notable. Les GPU MI250X et MI210 ont remporté plusieurs contrats de supercalculateurs.
- CDNA 3 réduit l’écart en mobilisant tout ce qu’AMD peut offrir. Le MI300X met en avant des technologies de packaging avancées grâce à une configuration chiplet sophistiquée.
- Côté mémoire, l’Infinity Cache de la ligne RDNA a été introduit dans l’univers CDNA pour atténuer les problèmes de bande passante.
- L’architecture de calcul de CDNA 3 bénéficie d’importantes améliorations générationnelles pour accroître le débit et l’utilisation.
Disposition du GPU
- AMD a l’habitude d’utiliser des chiplets sur ses CPU Ryzen et Epyc afin d’augmenter à moindre coût le nombre de cœurs.
- Le MI300X utilise une stratégie similaire, en séparant le calcul dans des Accelerator Complex Dies appelés XCD.
- Chaque XCD comprend un ensemble de cœurs et un cache partagé, et le MI300X possède au total 8 XCD, offrant 304 Compute Units.
- Le H100 de Nvidia dispose de 132 Streaming Multiprocessors (SMs), présentés aux programmeurs comme un seul grand GPU unifié.
- Le Ponte Vecchio (PVC) d’Intel utilise des Compute Tiles et une Base Tile pour offrir des fonctions similaires, mais fait face à des défis en tant que GPU unifié à cause des limites de bande passante des ponts EMIB.
Résolution des problèmes de bande passante
- Depuis des décennies, la puissance de calcul progresse plus vite que la mémoire, et les GPU y répondent avec des stratégies de cache de plus en plus sophistiquées.
- CDNA 2 utilisait 8 MB de cache L2 et s’appuyait sur la HBM2e, mais AMD a ajouté l’« Infinity Cache » utilisé dans RDNA(2).
- L’Infinity Cache est un cache côté mémoire, par lequel tout le trafic mémoire transite.
- L’Infinity Cache de CDNA 3 est conçu pour optimiser la bande passante et se compose de 128 tranches, fournissant au total 17.2 TB/s de bande passante.
Défis possibles de la bande passante inter-die
- L’Infinity Fabric du MI300X comprend 4 dies d’E/S, chacun relié à deux piles HBM et aux partitions de cache associées.
- La bande passante des connexions inter-die peut limiter l’atteinte de la bande passante théorique de l’Infinity Cache lorsque la puce fonctionne comme un seul GPU logique.
Cohérence inter-XCD
- L’Infinity Cache n’a pas à se soucier de la cohérence, mais le cache L2 oui.
- AMD utilise les Coherent Masters (CMs) et les Coherent Slaves (CS) de l’Infinity Fabric pour exposer le MI300X comme un seul grand GPU.
Cache L2
- Chaque XCD du MI300X inclut 4 MB de cache L2, qui joue un rôle important en tant que cache GPU traditionnel.
Cache L1
- CDNA 3 double le débit du cache L1 et augmente sa capacité de 16 KB à 32 KB.
Ordonnancement et unités d’exécution
- Grâce à une configuration chiplet complexe et à une hiérarchie de cache modifiée, AMD présente le MI300X comme un GPU unique.
- CDNA 3 apporte des améliorations itératives à l’architecture Compute Unit de base de CDNA 2, qui avait du mal à exploiter pleinement les unités FP32.
Opérations matricielles
- La multiplication de matrices devient de plus en plus importante avec la montée en puissance du machine learning.
- Le MI300X double le débit matriciel par CU, améliorant les performances par rapport aux générations précédentes de CDNA.
Cache d’instructions
- CDNA 3 porte la capacité du cache d’instructions à 64 KB et double son associativité de 4-way à 8-way.
Derniers mots
- Le plus grand changement générationnel de CDNA 3 se situe dans la hiérarchie mémoire, avec l’ajout de l’Infinity Cache comme amélioration principale.
- AMD a fortement augmenté la bande passante inter-die afin de faire du MI300 un seul grand accélérateur unifié.
L’avis de GN⁺
- L’architecture CDNA 3 représente une avancée majeure qui renforce la compétitivité d’AMD dans le domaine du calcul sur GPU.
- L’introduction de l’Infinity Cache constitue une approche innovante pour résoudre les problèmes de bande passante mémoire, particulièrement importante pour les applications de calcul haute performance traitant de grands jeux de données.
- La stratégie d’AMD consistant à présenter le MI300X comme un GPU unique réduit la complexité de programmation et permet aux développeurs d’utiliser les ressources plus efficacement, rendant ainsi la gamme de GPU d’AMD plus attractive pour un marché plus large.
1 commentaires
Commentaires sur Hacker News