• Ryzen Threadripper

Ces nouveaux CPU Ryzen Threadripper reprennent bien évidemment l'architecture Zen, nous ne détaillerons donc pas à nouveau cette dernière, pour ceux intéressés, vous pouvez vous référer à ce dossier. Quelques petits rappel sur Ryzen sont toutefois utiles. Faute de moyens, AMD a basé sa stratégie actuelle sur la création d'un seul et unique die nommé Zeppelin. Ce dernier est constitué de 8 cœurs, répartis équitablement au sein de 2 modules qu'AMD nomme CPU Complex ou CCX. La liaison entre ces 2 CCX et le contrôleur mémoire est assurée par une interface à tout faire, nommée Infinity Fabric. Cette dernière s'appuie sur une évolution du protocole HyperTransport des rouges, la couche physique fonctionnant comme un commutateur.

 

Infinity Fabric [cliquer pour agrandir]

L'Infinity Fabric

 

Voilà pour l'état des lieux. Afin de segmenter sa gamme, AMD a pu désactiver plus ou moins de cœurs ou cache L3 afin de positionner chaque processeur au sein de celle-ci. Par contre, comment diable proposer quelque chose de plus performant qu'un die Zeppelin complet et à ses fréquences maximales ? La solution la plus élégante serait de concevoir un nouveau die comprenant non pas 2 CCX mais 4 par exemple. Problème, les masques pour graver une telle puce coûtent une fortune, tout comme la production en elle-même (moins de dies par Wafer) ce qui n'est pas franchement compatible avec les finances de la société, qui a opté pour une solution plus simple : "coller" plusieurs dies ensemble pour obtenir un CPU plus puissant !

 

Liaison entre Die [cliquer pour agrandir]

 L'organisation interne d'un Threadripper

 

Il restait donc à trouver une solution pour interfacer les dies entre eux. Rien de plus facile lorsque l'on dispose d'une interface à tout faire, vous vous rappelez, la fameuse Infinity Fabric. Comme indiqué sur le schéma précédent, c'est par ce biais que le concepteur rouge a donc conçu ses CPU Epyc, utilisant pas moins de 4 dies en leur sein. De quoi proposer des puces serveurs adaptées au traitement massivement parallèle, avec jusqu'à 32 cœurs actifs. Threadripper reprend exactement cette structure, mais 2 dies sont désactivés afin de proposer des fréquences plus élevées, utiles pour un usage personnel, tout en restant dans une enveloppe thermique "raisonnable". La présence des 4 dies permet de "stabiliser" le heatspreader recouvrant l'ensemble. Un peu chère la cale, mais c'est surement la solution la moins onéreuse pour la production en masse de ces CPU, qui sont du coup intégrables au sein du process pour Epyc.

 

Mais le raccordement de plusieurs dies entre eux n'est pas sans poser certaines complications. La première se situe au niveau de la vitesse de transmission des données entre eux. Ce point est d'autant plus sensible, que la liaison entre CCX par Infinity Fabric n'est pas du genre foudre de guerre. Pour autant, AMD s'est donné les moyens de ses ambitions, avec selon lui, jusqu'à 102 Go/s à ce niveau, soit bien plus qu'entre CCX ! On pourra toujours s'interroger sur les raisons de la faiblesse du lien interne, reste que celui entre dies paraît pour le coup, largement dimensionné. Seconde complication, chaque die dispose de son propre contrôleur mémoire. A l'instar d'un solution multi-socket, l'accès aux données sera plus ou moins rapide, selon qu'elles soient stockées sur un canal mémoire liés au die exécutant le processus ou sur l'autre, AMD évoquant un ratio jusqu'à 1,6 entre ces 2 cas.

 

Debit Infinity Fabric entre die [cliquer pour agrandir]

La bande passante entre die et latence d'accès aux canaux mémoire

 

Il existe toutefois un protocole qui a été développé pour tenter d'améliorer cette situation côté mémoire. En collaboration avec le système d'exploitation, l'objectif de ce dernier est de tenter d'agencer les données de telle manière, qu'elles soient positionnées sur le canal mémoire géré par le die en ayant besoin. C'est ce que l'on appelle NUMA pour Non Uniform Access Memory, AMD le nommant Local Mode dans ses présentations ainsi que Ryzen Master, permettant d'activer ce dernier avec la version dédiée à Threadripper. 

 

NUMA [cliquer pour agrandir]

NUMA pour améliorer les performances mémoires avec 2 contrôleurs mémoire distants

 

Finissons par la connectivité permise du fait de l'usage de plusieurs dies au sein de Threadripper. Alors que seules 16 lignes PCIe 3.0 sont disponibles sur un Ryzen pour les cartes graphiques, ce chiffre passe à 48 pour le nouveau venu, puisque AMD en active 8 de plus par Zeppelin. En sus, sont disponibles (sur chacun) 8 lignes pour les interconnexions type stockage et chipset (un lien 4x sur un seul des 2 die). Au final, ce sont pas moins de 64 lignes PCIe qui sont déployées sur un Threadripper.

 

pcie t [cliquer pour agrandir]

Lignes PCIe disponibles

 

Maintenant que nous avons rapidement décrit Threadripper, passons page suivante au processeur reçu pour illustrer le comportement de cette nouvelle plateforme.




Les 18 Ragots
   
Les ragots sont actuellement
prévention anti trolls !ouverts aux ragoteurs logués