Le processeur de votre appareil effectue des millions de calculs chaque seconde et est responsable du fonctionnement de votre ordinateur. Travailler avec le processeur est l'unité de traitement arithmétique (ALU), qui est responsable des tâches mathématiques et est pilotée par le microcode du processeur.

Maintenant, ce microcode CPU n'est pas statique et peut être amélioré, et l'une de ces améliorations était le jeu d'instructions AVX-512 d'Intel. Cependant, Intel est sur le point de tuer AVX-512, supprimant définitivement ses fonctionnalités de ses processeurs. Mais pourquoi? Pourquoi Intel tue l'AVX-512 ?

Comment fonctionne une ALU ?

Avant de se familiariser avec le jeu d'instructions AVX-512, il est essentiel de comprendre le fonctionnement d'une ALU.

Comme son nom l'indique, l'unité de traitement arithmétique est utilisée pour effectuer des tâches mathématiques. Ces tâches incluent des opérations telles que l'addition, la multiplication et les calculs en virgule flottante. Pour accomplir ces tâches, l'ALU utilise des circuits numériques spécifiques à l'application, qui sont pilotés par le signal d'horloge du CPU.

instagram viewer

Par conséquent, la vitesse d'horloge d'un CPU définit la vitesse à laquelle les instructions sont traitées dans l'ALU. Ainsi, si votre processeur fonctionne sur une fréquence d'horloge de 5 GHz, l'ALU peut traiter 5 milliards d'instructions en une seconde. Pour cette raison, les performances du processeur s'améliorent à mesure que la vitesse d'horloge augmente.

Cela dit, à mesure que la vitesse d'horloge du processeur augmente, la quantité de chaleur générée par le processeur augmente. Pour cette raison, les utilisateurs expérimentés utilisent de l'azote liquide lors de l'overclocking de leurs systèmes. Malheureusement, cette augmentation de température aux hautes fréquences empêche les fabricants de CPU d'augmenter la fréquence d'horloge au-delà d'un certain seuil.

Alors, comment un processeur de nouvelle génération offre-t-il de meilleures performances par rapport aux itérations plus anciennes? Eh bien, les fabricants de processeurs utilisent le concept de parallélisme pour améliorer les performances. Ce parallélisme peut être obtenu en utilisant une architecture multicœur où plusieurs cœurs de traitement différents sont utilisés pour améliorer la puissance de calcul du CPU.

Une autre façon d'améliorer les performances consiste à utiliser un jeu d'instructions SIMD. En termes simples, une instruction Single Instruction Multiple Data permet à l'ALU d'exécuter la même instruction sur différents points de données. Ce type de parallélisme améliore les performances d'un processeur, et l'AVX-512 est une instruction SIMD utilisée pour augmenter les performances d'un processeur lors de l'exécution de tâches spécifiques.

Comment les données parviennent-elles à l'ALU ?

Maintenant que nous avons une compréhension de base du fonctionnement d'une ALU, nous devons comprendre comment les données atteignent l'ALU.

Pour atteindre l'ALU, les données doivent passer par différents systèmes de stockage. Ce parcours de données est basé sur la hiérarchie de la mémoire d'un système informatique. Un bref aperçu de cette hiérarchie est donné ci-dessous :

  • Mémoire secondaire: La mémoire secondaire d'un dispositif informatique consiste en un dispositif de stockage permanent. Cet appareil peut stocker des données de manière permanente mais n'est pas aussi rapide que le CPU. Pour cette raison, la CPU ne peut pas accéder aux données directement à partir du système de stockage secondaire.
  • Mémoire primaire: Le système de stockage principal est constitué d'une mémoire vive (RAM). Ce système de stockage est plus rapide que le système de stockage secondaire mais ne peut pas stocker les données de manière permanente. Par conséquent, lorsque vous ouvrez un fichier sur votre système, il se déplace du disque dur vers la RAM. Cela dit, même la RAM n'est pas assez rapide pour le CPU.
  • Mémoire cache: La mémoire cache est intégrée au processeur et constitue le système de mémoire le plus rapide sur un ordinateur. Ce système de mémoire est divisé en trois parties, à savoir la Cache L1, L2 et L3. Toutes les données devant être traitées par l'ALU sont transférées du disque dur vers la RAM, puis vers la mémoire cache. Cela dit, l'ALU ne peut pas accéder aux données directement depuis le cache.
  • Registres CPU : Le registre CPU d'un appareil informatique est de très petite taille et, selon l'architecture de l'ordinateur, ces registres peuvent contenir 32 ou 64 bits de données. Une fois que les données se sont déplacées dans ces registres, l'ALU peut y accéder et effectuer la tâche à accomplir.

Qu'est-ce que l'AVX-512 et comment ça marche ?

Le jeu d'instructions AVX 512 est la deuxième itération d'AVX et a fait son chemin vers les processeurs Intel en 2013. Abréviation d'Advanced Vector Extensions, le jeu d'instructions AVX a été introduit pour la première fois dans Intel Xeon Architecture Phi (Knights Landing) et plus tard intégrée aux processeurs de serveur d'Intel dans le Skylake-X CPU.

De plus, le jeu d'instructions AVX-512 a fait son chemin vers les systèmes grand public avec l'architecture Cannon Lake et a ensuite été pris en charge par les architectures Ice Lake et Tiger Lake.

L'objectif principal de ce jeu d'instructions était d'accélérer les tâches impliquant la compression de données, le traitement d'images et les calculs cryptographiques. Offrant le double de la puissance de calcul par rapport aux itérations plus anciennes, le jeu d'instructions AVX-512 offre des gains de performances substantiels.

Alors, comment Intel a-t-il doublé les performances de ses CPU en utilisant l'architecture AVX-512 ?

Eh bien, comme expliqué précédemment, l'ALU ne peut accéder qu'aux données présentes dans le registre d'un processeur. Le jeu d'instructions Advanced Vector Extensions augmente la taille de ces registres.

En raison de cette augmentation de taille, l'ALU peut traiter plusieurs points de données en une seule instruction, augmentant ainsi les performances du système.

En termes de taille de registre, le jeu d'instructions AVX-512 propose trente-deux registres de 512 bits, soit le double par rapport à l'ancien jeu d'instructions AVX.

Pourquoi Intel met-il fin à l'AVX-512 ?

Comme expliqué précédemment, le jeu d'instructions AVX-512 offre plusieurs avantages de calcul. En fait, les bibliothèques populaires telles que TensorFlow utilisent le jeu d'instructions pour fournir des calculs plus rapides sur les processeurs prenant en charge le jeu d'instructions.

Alors, pourquoi Intel désactive-t-il AVX-512 sur ses récents processeurs Alder Lake ?

Eh bien, les processeurs Alder Lake ne ressemblent pas aux anciens fabriqués par Intel. Alors que les systèmes plus anciens utilisaient des cœurs fonctionnant sur la même architecture, les processeurs Alder Lake utilisent deux cœurs différents. Ces cœurs dans les processeurs du lac Alder sont connus sous le nom de P et E-noyaux et sont alimentés par différentes architectures.

Alors que les cœurs P utilisent la microarchitecture Golden Cove, les cœurs E utilisent la microarchitecture Gracemont. Cette différence d'architecture empêche le bon fonctionnement de l'ordonnanceur lorsque des instructions particulières peuvent s'exécuter sur une architecture mais pas sur l'autre.

Dans le cas des processeurs Alder Lake, le jeu d'instructions AVX-512 en est un exemple, car les cœurs P ont le matériel pour traiter l'instruction, mais pas les cœurs E.

Pour cette raison, les processeurs Alder Lake ne prennent pas en charge le jeu d'instructions AVX-512.

Cela dit, l'instruction AVX-512 peut s'exécuter sur certains processeurs Alder Lake où Intel ne les a pas physiquement fusionnés. Pour faire de même, les utilisateurs doivent désactiver les cœurs électroniques pendant le BIOS.

L'AVX-512 est-il nécessaire sur les chipsets grand public ?

Le jeu d'instructions AVX-512 augmente la taille du registre d'un processeur pour améliorer ses performances. Cette amélioration des performances permet aux processeurs d'effectuer des calculs plus rapidement, permettant aux utilisateurs d'exécuter des algorithmes de compression vidéo/audio à des vitesses plus rapides.

Cela dit, cette amélioration des performances ne peut être observée que lorsque l'instruction définie dans un programme est optimisée pour s'exécuter sur le jeu d'instructions AVX-512.

Pour cette raison, les architectures de jeux d'instructions comme AVX-512 sont plus adaptées aux charges de travail des serveurs, et les chipsets grand public peuvent fonctionner sans jeux d'instructions complexes comme l'AVX-512.