En réalité, peu importe où l’on regarde dans l’industrie, les architectures, bien que différentes, sont de plus en plus axées sur des secteurs plus spécifiques, oui, mais elles ont la même base, les mêmes problèmes, les mêmes avantages. C’est pourquoi nous allons voir les principaux goulots d’étranglement matériels et leur évolution pour comprendre où l’on va.
Différents composants, différentes limitations, performances et latences
Logiquement, les limitations ou les goulots d’étranglement sont différents dans chaque composant, mais ils ont quelque chose en commun dans tous les cas avec une importance plus ou moins grande : la latence. Dans certains cas c’est clé, dans d’autres ça marche sur la pointe des pieds, mais ça marquera sans aucun doute la performance dans les années à venir. De plus, c’est indistinct pour PC ou console, où, sauvegardant leurs particularités, ils sont également touchés.
Pour nous donner une idée de l’importance de la latence, nous avons ce graphique qui est devenu célèbre à l’époque et qui illustre assez bien ce que cela signifie dans divers composants, nanosecondes, millisecondes et secondes, par rapport au temps tel que nous le percevons normalement en tant qu’humains. .
Comme on peut le voir dans un processeur pour 3GHz un retard dans les cycles d’horloge de seulement 0,3 ns impliquerait une perception de 1 seconde pour nous. L’accès au L3, qui prend en moyenne environ 12 ns selon l’architecture du processeur, représente 43 secondes de notre vie.
Action | latence moyenne | Temps de réalisation pour une personne |
---|---|---|
Temps d’un cycle d’horloge à 3 GHz | 0.3ns | 1 seconde |
Temps d’accès au cache L1 d’un CPU | 0.9ns | 3 secondes |
Temps d’accès au cache L2 du processeur | 2.8ns | 9 secondes |
Temps d’accès L3 | 12.9ns | 43 secondes |
Temps d’accès à la RAM | Entre 70 et 100 ns | Entre 3,5 minutes et 5,5 minutes |
Synchronisation des E/S d’un SSD NVMe | Entre 7 et 150 picosecondes | Entre 2 heures et 2 jours |
Temps d’entrée et de sortie du disque dur | Entre 1 et 10ms | Entre 11 jours et 4 mois |
Internet, temps d’accès de San Francisco à New York | 40ms | 1,2 ans |
Temps Internet entre San Francisco et l’Australie | 183ms | 6 ans |
Redémarrage de la virtualisation d’un OS | 4 secondes | 127 ans |
Redémarrer une virtualisation | 40 secondes | 1200 ans |
Redémarrer un système physique | 90 secondes | 3 millénaires |
Si nous extrapolons cela à la RAM et montons à 100 ns, cela équivaudrait à parcourir une distance jusqu’à notre destination de 5,5 minutes. Les plus frappants sont peut-être les temps de latence d’Internet, quelque chose de plus courant que tout le monde peut comprendre, et c’est que si nous avons 40 millisecondes entre San Francisco et New York, cela équivaudrait à perdre 1,2 an de notre vie et si nous changeons la destination en Australie rien de moins que 6 ans.
Par conséquent, la latence est très importante sur un PC ou sur une console, où, on le voit, chaque génération se bat depuis plus de 40 ans pour la réduire afin d’augmenter les performances par instruction et par cycle. Cela dit, nous allons voir comment cela affecte les principaux composants et s’il y a des améliorations dans cet aspect à court ou à long terme.
Latence du processeur
C’est de loin le composant qui souffre le plus. L’ancien architecte en chef d’AMD, Jim Keller, l’a brillamment défini à l’époque :
Les limites de performance sont la prévisibilité des instructions et des données
Autrement dit, si vous pouvez prédire quelles ressources sont nécessaires pour chaque instruction et donnée, vous pouvez mieux les gérer et, par conséquent, générer moins de temps entre elles ou augmenter les performances.
Là encore la latence ici et c’est que le problème a été vu en premier par AMD et maintenant Intel va le résoudre en partie dans Raptor Lake : augmenter la taille des caches pour atténuer les temps d’accès et le passage des instructions et des données dans la hiérarchie des caches.
Ce qui est tenté, c’est de ne pas accéder à la RAM, ou de limiter au maximum les cycles d’accès. AMD l’a déjà fait avec Ryzen et Zen 2 à Zen 3, Intel le fera désormais dans sa prochaine architecture.
RAM et mémoire GDDR6
C’est peut-être l’aspect le plus important de ces deux composantes. La mémoire RAM est toujours remise en question en raison de la latence, mais ce qui est vraiment demandé, c’est plus de bande passante, plus de fréquence, plus de vitesse sans compromettre les ratios avec les timings. La DDR5 a déclenché cela pour de bon et bien que sur PC nous n’allons pas le remarquer autant que sur serveur, c’est une technologie nécessaire pour le secteur en général.
Quant à GDDR6, la latence n’est pas aussi importante que la bande passante qui en résulte, puisque la capacité de calcul des GPU augmente et qu’ils ont besoin de fournir des données depuis leurs mémoires associées. La latence est donc secondaire, même si elle est loin d’être négligeable.
Il n’y a pas non plus d’améliorations en vue par rapport à GDDR6X en tant que tel, où la vitesse et la fréquence sont augmentées tout en maintenant la latence aux mêmes cycles d’horloge.
SSD, ses performances et sa latence sur PC
Ils dépendent le moins de ce facteur, mais la latence est nécessaire pour les opérations aléatoires à large bande passante. Les contrôleurs doivent échanger de plus en plus de données avec les cellules et, par conséquent, les performances ne peuvent pas être perdues avec des cycles d’horloge impactant la bande passante brute basée sur les IOPS.
En résumé, ce sont les cœurs de processeur qui sont les plus touchés par leur cache, ce qui arrivera dans peu de temps avec les GPU, puisqu’ils augmentent également leur taille et les exportent hors des groupes Shaders comme AMD l’a fait avec Infinity Fabric. et Infinity Cache, où précisément ils ont l’intention de ne pas dépendre d’une vitesse plus élevée de GDDR sur les GPU et en même temps de ne pas prendre de place sur les unités CU.
Il y a une animation très curieuse qu’en cliquant simplement sur les différents éléments représentés, l’importance de la latence du système dans ses différents composants est parfaitement comprise. Il vous suffit d’accéder à un site Web et de commencer à cliquer pour voir l’animation du fonctionnement des éléments,
C’est surtout intéressant quand on continue de cliquer sur la mémoire système, puis on passe en L2 puis en L1 pour voir l’organisation et le flux de performances et de latence entre eux, vraiment curieux et instructif. Dès lors, le passage d’AMD avec Zen 2 et Zen 3 a été crucial pour pouvoir affronter Intel au prix d’un très grand espace dans le DIE, chose qu’Intel doit désormais répliquer et qu’il ne devait pas faire auparavant en raison de sa procédé lithographique. .
La température, plus grave que la latence et les performances sur PC ?
Logiquement, un facteur déterminant dans les performances de toute puce est la température. Le problème est que cela est inhérent à la technologie, puisque toute puce qui a une tension aura une température plus élevée ou plus basse par simple opération. Plus la complexité de la puce est grande, plus elle a de cœurs et d’unités, plus elle a de fréquence et logiquement plus elle a besoin de tension, donc elle chauffera plus.
Comme prévu, c’est quelque peu ambigu, car ce sera toujours un facteur limitant, mais en même temps la chaleur n’est pas un facteur technologique et nous devons simplement vivre avec comme nous le faisons depuis la création de la première puce.
En bref, la latence en PC et les performances des différents composants est le facteur clé qui limite et limitera cette (performance) plus que tout autre, car cela ne vaut rien d’avoir une vitesse générale plus élevée si le temps d’accès et le le transfert d’informations entre les composants est de plus en plus retardé.