COMPTOIR
  
register

×
×
×
×
×
×
×

Test • Intel Core i9-7960X / 7980XE
Evolution de la hiérarchie des caches L2 & L3 avec Skylake-X
Différences de fonctionnement d'un cache L3 inclusive vs non inclusive
Ring vs Mesh
Amélioration architecture Skylake
Turbo Boost 3.0 mis à jour
AVX 512
LCC vs HCC

• RAPPELS Skylake-X

C'est en août 2015 que Skylake a fait ses premiers pas via le Core i7-6700K, il aura donc fallut près de 2 ans pour le voir apparaître sur la plateforme haut de gamme du fondeur. Le passage chez Intel d'une architecture de la plateforme 115X vers 20XX se déroule généralement de la façon suivante : l'IGP disparaît, le nombre de cœurs, lignes PCIe et canaux mémoire croît et la fréquence est réduite. Pour le reste, l'architecture n'évolue pas (des fonctions boguées sur l’itération 115X sont parfois réactivées suite à un correctif) et on conserve donc une forte parenté entre les 2 gammes. C'est toujours le cas, mais quelques changement notables apparaissent cette fois, en particulier au niveau des caches, tant côté capacité que mode de fonctionnement.

 

Evolution de la hiérarchie des caches L2 & L3 avec Skylake-X [cliquer pour agrandir]

L'évolution de la hiérarchie mémoire avec Skylake-X

 

Si côté L1, rien ne change avec toujours 2 x 32 ko dédiés respectivement aux instructions et données pour chaque cœur, ces derniers disposent par contre d'un L2 quatre fois plus large à 1 Mo. C'est donc une bonne nouvelle en apparence, si tant est que ce dernier soit aussi rapide, ce qui n'est pas forcément le cas. Second changement d'importance, le cache de 3e niveau est cette fois drastiquement réduit (de 2,5 Mo par cœur à 1,375 Mo) tout en abandonnant le fonctionnement inclusif (c'est à dire qu'il n'y a plus de copie systématique des données du L2 dans le L3). Son fonctionnement devient donc, à l'instar de Ryzen, de type victime (ou poubelle pour reprendre l'expression favorite de notre Titi) puisqu'il se remplit principalement par le biais des données éjectées du niveau 2.

 

Différences de fonctionnement d'un cache L3 inclusive vs non inclusive [cliquer pour agrandir]

Modes de fonctionnement cache L3

 

Mais le fonctionnement des différents caches n'est pas la seule modification notable, l'interconnexion entre les différents éléments du processeur évolue également fortement. Jusqu'à Broadwell-E, Intel utilisait un double bus en anneau (un par sens de circulation des données) permettant la connexion des cœurs, de leur L3, des contrôleurs mémoire et des liens de communication (PCIe, QPI). Ce mode de fonctionnement, également adopté il y a quelques années par ATi sur ses RADEON, permet des débits très importants, mais peut s'avérer délicat, et très coûteux en ressources, à mettre en œuvre lorsque le nombre d'éléments à connecter est important. Intel est par exemple obligé d'en utiliser deux en parallèle interfacés entre eux pour les dies de plus de 10 cœurs.

 

  Ring vs Mesh [cliquer pour agrandir]

Le double Ring Bus de Broadwell-EX vs Mesh de Skylake-SP

 

C'est à cause de ce point particulier qu'est née Mesh, telle que la nomme Intel. Il s'agit en fait d'une matrice de connexion à 2 dimensions (lignes et colonnes) permettant de relier entre eux les différents éléments d'un processeur (cœurs, caches, contrôleurs, etc.) sur deux axes de communication, par le biais de switch dédiés. Autant dire que la logique de gestion de tout cela est complexe, induisant des impacts défavorables au niveau des latences entre éléments connectés dans le cas d'une matrice de taille réduite, mais serait de plus en plus efficiente (selon Intel) à mesure que le nombre d'interconnexions augmente, car obligeant à multiplier les "arrêts" au sein d'un Ring Bus (cf. schéma précédent). Voilà rapidement résumée Mesh, l'image suivante rappelle les principaux apports de la micro-architecture Skylake par rapport à Broadwell, conduisant à un gain d'IPC de 10% selon le fondeur. 

 

Amélioration architecture Skylake [cliquer pour agrandir]

Evolution de l'architecture

 

Turbo Boost Max 3.0, qui avait fait son apparition avec Broadwell-E, bénéficie également d'une mise à niveau : il s'agissait d'un Turbo opportuniste permettant d'affecter (gestion au niveau de l'OS) le meilleur cœur de chaque CPU (qui varie d'un processeur à l'autre) au processus actif tout en lui permettant d'atteindre une fréquence plus élevée qu'à l'accoutumée (lorsque seul ce dernier était sollicité). Avec Skylake-X, ce n'est plus uniquement le meilleur cœur qui est concerné mais les 2 meilleurs, ce qui permet une mise en œuvre plus fréquente, surtout avec les OS modernes friands de processus en parallèle. On notera que le fonctionnement est à présent natif sous Windows 10 (à partir de la mise à jour Anniversary).

 

Turbo Boost 3.0 mis à jour [cliquer pour agrandir]

Turbo Boost Max 3.0 mis à jour

 

Pour finir avec les nouveautés de Skylake-X, évoquons l'apparition des instructions AVX-512 (enfin d'une partie seulement, certaines étant réservées aux puces de la gamme professionnelle) qui, comme leur nom le laisse deviner, permettent le traitement d'opérandes 512-bit. De quoi imaginer de jolis gains lors de leur prise en charge future par des applications permettant une telle largeur de calcul.

 

 

AVX 512 [cliquer pour agrandir]

 

Evolution des instructions AVX au cours des architectures Intel

 

Un mot sur la composition de la gamme Skylake-X : Intel utilise depuis un bon moment pour ses processeurs haut de gamme grand public, un die dédié aux Xeon, les puces professionnelles. Parmi ces derniers, le fondeur segmente la gamme en trois selon le nombre de cœurs disponibles : HCC (High Core Count) pour les puces les plus richement dotées, soit jusqu'à 28 cœurs pour la génération actuelle, MCC (Medium Core Count) jusqu'à 18 cœurs et LCC (Low Core Count) pour les puces jusqu'à 10 cœurs. Jusqu'à présent, le géant bleu se contentait des die LCC pour ses CPU LGA 20xx (c'est le cas des 7900X/7820X/7800X), mais l'arrivée de Threadripper l'a obligé à revoir sa stratégie en proposant également des CPU basés sur le second die professionnel (MCC) pour atteindre 18 cœurs et ne pas rester en retrait face à son concurrent sur cet item. Notons toutefois qu'il n'y aura pas (à priori) de CPU utilisant plus de 18 cœurs sur LGA 2066, le die Xeon MCC se trouve donc renommé "commercialement" HCC dans le schéma suivant, pour cette plateforme grand public qui n'en utilisera que 2.     

 

LCC vs HCC [cliquer pour agrandir]Représentation schématique des 2 die utilisés pour Skylake-X

 

On constate que les 2 dies comportent 6 canaux mémoires, toutefois Intel n'en active que 4 sur plateforme LGA 2066, à priori pour limiter le coût de câblage et la complexité du socket (qui a parlé de TR4 ?). Pour terminer en beauté cette page, rien de tel qu'une petite photo de Skylake-X. L'image fournie à la presse lors du lancement du Core i9-7900X représentant en fait le die de la version 18 cœurs que nous allons tester, ça tombe plutôt bien pour illustrer ce nouveau dossier.

 

die sklx

Die Skylake-X

 

Maintenant que nous avons rapidement rappelé les fondements de Skylake-X, passons page suivante aux processeurs reçus pour représenter le comportement de ce second die présent sur la plateforme haut de gamme des bleus.



Un poil avant ?

Des kits G.Skill Trident Z optimisés Ryzen et Threadripper

Un peu plus tard ...

Marea, le câble sous-marin d'une capacité de 160 Tb/s, est déjà terminé !

Les 31 ragots
Les ragots sont actuellement
ouverts à tous, c'est open bar !