x86_64-v1, v2, v3 et v4 : les processeurs PC 64bits les plus anciens deviennent obsolètes
Informatique
| 1 Commentaire
Un petit message affiché au démarrage d'une Rocky Linux 9.5 qui m'a poussé à me renseigner. Mon processeur est-il déjà considéré comme obsolète ? Déjà plein d'infos sur la toile mais je n'étais pas au courant.
On sait que les différentes versions de Windows réclament des processeurs plus ou moins récents pour fonctionner, c'est au tour de certaines distributions Linux.


Sources :
Tout est sur Wikipedia, en gros : la simple distinction 32bits (i386 ou i686) VS 64bits ne suffira plus à l'avenir pour la famille de CPU PC 64 bits (EM64T & AMD64). Il va falloir distinguer au sein même de la famille des x86_64 lesquels sont encore compatibles avec certaines distributions Linux. En fait les processeurs AMD et Intel 64 bits (depuis l'Athlon 64 et les Pentium 4 Prescott, les chaudières d'antan quoi) ont été découpés en 4 "levels" (micro-architectures).
Donc tout dépend de comment est compilée votre distribution (noyau, bibliothèques et autres programmes). Certaines distributions vont peut-être faire le choix de compiler pour du v3 uniquement, ceci afin d'exploiter ces nouvelles instructions qui ont été embarquées au fur et à mesure dans les processeurs. Les réactions sont mitigées quant au gain de performances apporté (lien 2). RedHat a fait un choix qui va mettre ainsi les plus vieux processeurs 64bits d'avant 2013 (Haswell) au rebus. Exit les anciens Ivy/Sandy Bridge. Dans la future RHEL 10, distribution mère d'autres comme AlmaLinux, Rocky Linux ou encore Oracle Linux, les processeurs v2 ne seront plus pris en charge. Rien à voir avec les failles des CPU. Linux Torvals est contre cela. Sauf que dans le monde professionnel ben comme d'habitude beaucoup de gens se plieront à Red Hat.
Il existe un petit script awk pour savoir à quel niveau votre CPU est situé, selon ses flags (lscpu ou cat /proc/cpuinfo).
Perso pour quelques unes de mes machines :
Cela n’empêche pas l'installation de distributions Linux qui ne font pas ce choix et compilent toujours en mode baseline v1 comme Debian, Ubuntu ou Fedora.
Attention, le message peut s'afficher à tort dans des VM comme VirtualBox, cela provient de l'hyperviseur qui "rapporte" mal au noyau Linux de la VM les fonctions du processeur. Voir ce lien KVM/QEMU.



Sources :
- https://developers.redhat.com/articles/2024/01/02/exploring-x86-64-v3-red-hat-enterprise-linux-10#
- https://developers.redhat.com/blog/2021/01/05/building-red-hat-enterprise-linux-9-for-the-x86-64-v2-microarchitecture-level#
- https://access.redhat.com/solutions/7066628
Citation :
Red Hat will upgrade the instruction set architecture (ISA) baseline to the x86-64-v3 microarchitecture level in RHEL 10 and x86-64-v1 and x86-64-v2 x86-64 microarchitecture level of CPUs will be marked deprecated in RHEL 8 and RHEL 9 and unsupported in RHEL 10.
Tout est sur Wikipedia, en gros : la simple distinction 32bits (i386 ou i686) VS 64bits ne suffira plus à l'avenir pour la famille de CPU PC 64 bits (EM64T & AMD64). Il va falloir distinguer au sein même de la famille des x86_64 lesquels sont encore compatibles avec certaines distributions Linux. En fait les processeurs AMD et Intel 64 bits (depuis l'Athlon 64 et les Pentium 4 Prescott, les chaudières d'antan quoi) ont été découpés en 4 "levels" (micro-architectures).
Donc tout dépend de comment est compilée votre distribution (noyau, bibliothèques et autres programmes). Certaines distributions vont peut-être faire le choix de compiler pour du v3 uniquement, ceci afin d'exploiter ces nouvelles instructions qui ont été embarquées au fur et à mesure dans les processeurs. Les réactions sont mitigées quant au gain de performances apporté (lien 2). RedHat a fait un choix qui va mettre ainsi les plus vieux processeurs 64bits d'avant 2013 (Haswell) au rebus. Exit les anciens Ivy/Sandy Bridge. Dans la future RHEL 10, distribution mère d'autres comme AlmaLinux, Rocky Linux ou encore Oracle Linux, les processeurs v2 ne seront plus pris en charge. Rien à voir avec les failles des CPU. Linux Torvals est contre cela. Sauf que dans le monde professionnel ben comme d'habitude beaucoup de gens se plieront à Red Hat.
Il existe un petit script awk pour savoir à quel niveau votre CPU est situé, selon ses flags (lscpu ou cat /proc/cpuinfo).
Code BASH :
#!/usr/bin/awk -f BEGIN { while (!/flags/) if (getline < "/proc/cpuinfo" != 1) exit 1 if (/lm/&&/cmov/&&/cx8/&&/fpu/&&/fxsr/&&/mmx/&&/syscall/&&/sse2/) level = 1 if (level == 1 && /cx16/&&/lahf/&&/popcnt/&&/sse4_1/&&/sse4_2/&&/ssse3/) level = 2 if (level == 2 && /avx/&&/avx2/&&/bmi1/&&/bmi2/&&/f16c/&&/fma/&&/abm/&&/movbe/&&/xsave/) level = 3 if (level == 3 && /avx512f/&&/avx512bw/&&/avx512cd/&&/avx512dq/&&/avx512vl/) level = 4 if (level > 0) { print "CPU supports x86-64-v" level; exit level + 1 } exit 1 }
Perso pour quelques unes de mes machines :
Machine | CPU | Generation | Level |
---|---|---|---|
Dell Optiplex 380 | Core 2 Duo E8600 | Penryn / Wolfdale | v1 |
IBM X3400 M3 | Xeon E5540 | Nehalem-EP | v2 |
IBM X3100 M4 | Xeon E3-1220v2 | Ivy Bridge | v2 |
Dell Optiplex 3050 Micro | i5-7500T | Kaby Lake | v3 |
Dell PowerEdge T440 | Xeon Silver 4116 | Skylake-SP | v4 |
PC NAS Assemblé | i3-12100 | Alder Lake | v3 |
Citation :
On any x86_64 Linux distribution, all x86_64 feature levels supported by a CPU can be verified using command: ld.so --help The result will be visible at the end of command's output:
Cela n’empêche pas l'installation de distributions Linux qui ne font pas ce choix et compilent toujours en mode baseline v1 comme Debian, Ubuntu ou Fedora.
Attention, le message peut s'afficher à tort dans des VM comme VirtualBox, cela provient de l'hyperviseur qui "rapporte" mal au noyau Linux de la VM les fonctions du processeur. Voir ce lien KVM/QEMU.