Ouvrir le menu principal

MacGeneration

Recherche

Avec APX et AVX10, Intel prépare le futur du x86

Pierre Dandumont

jeudi 17 août 2023 à 11:00 • 35

Ailleurs

Si le jeu d'instructions des x86 a commencé sa vie en 1976, il n'est pas obsolète pour autant. Régulièrement, Intel tente d'améliorer les bases du x86 en ajoutant des fonctions, même si c'est parfois son concurrent AMD qui prend le pas, comme lors de la création de la version 64 bits. Et après une annonce récente sur un mode qui abandonnerait en partie la sacro-sainte rétrocompatibilité (le x86-S), Intel a montré l'AVX10 et l'APX, deux solutions qui ne ciblent pas du tout la même chose… et qui pourtant visent à améliorer le x86.

Intel veut abandonner le 16 bits et le 32 bits avec un x86-S 64 bits simplifié, bien après Apple

Intel veut abandonner le 16 bits et le 32 bits avec un x86-S 64 bits simplifié, bien après Apple

AVX10 unifie les cœurs hybrides

Ça peut sembler un peu bizarre, mais l'architecture hybride d'Intel, lancée fin 2021 en masse1, n'est pas totalement fonctionnelle. Plus exactement, certaines instructions ne sont utilisables que si les cœurs basse consommation sont désactivés, et uniquement sur les premières versions des puces.

C'est un peu compliqué à résumer, accrochez-vous. Intel a lancé les instructions vectorielles AVX-512 avec une famille de Xeon un peu particulière, les Xeon Phi. Ces modèles massivement multicœurs — ils contiennent jusqu'à 72 cœurs capables d'exécuter 4 threads chacun — ont en effet été les premiers à proposer le jeu d'instructions vectorielles sur 512 bits d'Intel, en 2016. L'AVX-512 a ensuite été ajouté dans les variantes professionnelles de certaines puces (les Xeon basés sur les Core de 6e génération, Skylake) puis — de façon un peu étonnante — dans les Core de 10e génération mobile (Ice Lake), 11e génération mobile (Tiger Lake) et 11e génération de bureau (Rockert Lake). Mais avec Alder Lake, la 12e génération, AVX-512 a disparu. Ce n'est pas une question de consommation (même si les instructions sont très gourmandes) mais bien un souci de prise en charge. En effet, si les cœurs performants de la 12e génération sont compatibles2, les cœurs basse consommation ne l'étaient pas. Donc Intel a désactivé les instructions.

L'évolution prévue d'AVX10 (image Intel).

Avec AVX10, ce problème va disparaître : les instructions reprendront les bases d'AVX-512 (donc les vecteurs sur 512 bits) et fonctionneront sur toutes les puces. Au départ, il y aura une limite évidente : tous les cœurs ne supporteront pas les vecteurs de 512 bits, ce qui va réduire les performances attendues dans certains cas. En effet, actuellement, seuls les cœurs performants peuvent les prendre en charge. Mais si les données sont traitées sur des vecteurs de 256 bits, tous les cœurs pourront en profiter.

La principale contrainte de ces nouvelles instructions va évidemment venir de la prise en charge : les développeurs vont devoir adapter le code AVX-512 pour le rendre compatible AVX10, ce qui semble simple et pourrait ne nécessiter qu'une simple recompilation. Ensuite, Intel promet une bonne rétrocompatibilité dans le futur, sans indiquer comment seront segmentées les puces. Car pour revenir à la situation actuelle, les puces qui prennent en charge les vecteurs de 512 bits sont rares, et il n'est pas exclu qu'Intel limite la présence de ces derniers aux processeurs les plus rapides, par exemple Core 5 et plus. Mais dans tous les cas, une unification des instructions prises en charge va simplifier le travail des développeurs.

APX, pour améliorer les performances

L'autre nouveauté future, comme l'explique AnandTech, va venir de l'APX (Advanced Performance Extensions). APX ajoute uniquement quelques instructions qui servent à optimiser certaines instructions existantes, mais double le nombre de registres. Un registre est une zone mémoire interne au processeur qui stocke les données en cours de traitement et les processeurs x86 possèdent historiquement peu de registres, contrairement aux PowerPC par exemple. Doubler le nombre de registres permet de réduire les transferts entre ceux-ci et donc d'améliorer (un peu) l'efficacité tout en réduisant le nombre d'instructions. Et ce point amène mécaniquement des exécutables un peu plus compacts, ce qui est toujours bon à prendre.

Le dernier gros changement en x86 vient de la version 64 bits, portée par AMD.

APX amène donc environ 10 % de gains en efficacité selon Intel, mais avec un gros bémol : une rétrocompatibilité en berne. En effet, les programmes doivent être compilés pour les instructions APX, ce qui les rends incompatibles avec le x86-64 classique. Dans un monde PC parfois sclérosé à cause de la rétrocompatibilité, c'est évidemment un problème : il a fallu attendre l'arrivée de Windows 11 pour que Microsoft abandonne la prise en charge du 32 bits pour le système d'exploitation, et beaucoup de programmes modernes se contentent encore d'exécutables 32 bits. Dans les faits, APX pourrait être intéressant dans certains cas, mais il y aura probablement une période pendant laquelle les développeurs proposeront du code APX et du code x86-64 en parallèle, ce qui réduira en partie l'intérêt d'un code plus réduit.

Ces deux nouveautés montrent surtout qu'Intel ne semble pas vouloir abandonner le x86, alors que certains prédisent la mort du jeu d'instructions devant la montée en puissance des puces ARM et autres RISC-V. Mais l'immobilisme du monde PC est souvent sous-estimé, ce qui explique que la vague attendue des PC sous Windows ARM imaginée par certains lors de l'arrivée des puces Apple Silicon en 2020 ne s'est jamais concrétisée (et n'arrivera probablement jamais).

Enfin, il faut évidemment noter que les Mac Intel ne profiteront pas de ces nouveautés, mais que les concurrents d'Intel ne restent pas les bas croisés pour autant. Tant les puces ARM que les RISC-V évoluent régulièrement et ajoutent des instructions pour suivre les évolutions du marché.


  1. Techniquement, il existe aussi une architecture hybride, Lakefield, mais elle a été très peu utilisée.  ↩︎

  2. Les premières révisions des Core de 12e génération acceptent l'activation de l'AVX-512 avec un BIOS adapté. Le bridage d'Intel est plus solide ensuite.  ↩︎

Rejoignez le Club iGen

Soutenez le travail d'une rédaction indépendante.

Rejoignez la plus grande communauté Apple francophone !

S'abonner

68 040 € collectés, notre rédacteur en chef doit (enfin) abandonner son Mac Intel !

10:20

• 0


Microsoft Office pour Mac est à prix cassé chez Godeal24 ! 📍

09:40


Chez Apple, 2024 aura été l’année des écrans nano-texturés

09:00

• 5


Apple retrouve un VP Design Industriel après un an de disette

10/11/2024 à 19:30

• 26


Gurman : pas de produit aussi vendeur que l’iPhone, mais c’est pas grave…

10/11/2024 à 18:10

• 37


Plus de 1 000 soutiens pour notre campagne de sociofinancement, et si on allait jusqu’à 100 000 € ?

10/11/2024 à 11:59

• 99


Promo : un forfait 5G 80 Go à 6,99 € par mois !

Partenaire


Il est déjà possible d'étendre le stockage du Mac mini M4 sans passer par Apple

09/11/2024 à 16:00

• 45


La gamme M4 impressionne, du M4 au M4 Max : tout savoir sur les nouvelles puces Apple

09/11/2024 à 14:00

• 78


Sortie de veille : l’acquisition de Pixelmator par Apple, bonne ou mauvaise nouvelle ?

09/11/2024 à 08:00

• 45


MacGeneration a 25 ans et des journalistes toujours fringants

09/11/2024 à 08:00

• 45


Apple continue de faire disparaître ses autocollants

08/11/2024 à 20:00

• 26


iMac M4 : premier aperçu en images

08/11/2024 à 18:19

• 46


Apple Store : le délai de retour prolongé jusqu'au 8 janvier 2025

08/11/2024 à 18:00

• 9


Prise en main d'un Mac mini M4… vraiment mini

08/11/2024 à 16:15

• 171


Comme le Mac Studio, le Mac mini M4 dispose d'un SSD sur barrette qui pourra être changé

08/11/2024 à 16:00

• 38