Comment vérifier le jeu d’instructions du processeur
Le but de ce tutoriel est de montrer comment vérifier le jeu d’instructions d’un processeur sur un système Linux. Le jeu d’instructions d’un processeur est, en termes simples, les capacités qu’il possède. Par exemple, si votre processeur prend en charge la virualisation matérielle, celle-ci fait partie de son jeu d’instructions.
Les informations sur le jeu d’instructions de votre processeur sont stockées dans Linux, au niveau du système d’exploitation. Cela signifie qu’il est parfaitement accessible pour les utilisateurs normaux, il suffit de savoir où chercher.
Dans ce tutoriel, nous allons voir comment obtenir le jeu d’instructions CPU sous Linux, à partir de la ligne de commande et de l’interface graphique. Cela inclura également des informations indiquant si le processeur est 32 bits ou 64 bits. Dans le même ordre d’idées, consultez notre guide sur la façon de vérifier et de surveiller l’utilisation du processeur si vous souhaitez mesurer les performances de votre processeur.
Dans ce tutoriel, vous allez apprendre :
- Comment vérifier le jeu d’instructions du processeur à partir de la ligne de commande et de l’interface graphique
- Comment installer le programme Hardinfo GUI sur les principales distributions Linux
Vérifier le jeu d’instructions du processeur via la ligne de commande
Il existe plusieurs utilitaires de ligne de commande que nous pouvons utiliser pour obtenir des informations sur le processeur sous Linux. Les méthodes suivantes montrent les outils les plus utiles, qui sont installés par défaut sur presque toutes les distributions Linux.
Le fichier virtuel /proc/cpuinfo contient de nombreuses informations sur les processeurs installés dans notre système. Affichez-le à l’aide de la commande suivante.
cat /proc/cpuinfo
Le résultat de cette commande ressemblera à ceci :
processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 61
model name : Intel(R) Core(TM) i5-5300U CPU @ 2.30GHz
stepping : 4
microcode : 0xffffffff
cpu MHz : 2294.689
cache size : 3072 KB
physical id : 0
siblings : 4
core id : 0
cpu cores : 2
apicid : 0
initial apicid : 0
fpu : yes
fpu_exception : yes
cpuid level : 20
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss ht syscall nx pdpe1gb rdtscp lm constant_tsc rep_good nopl xtopology cpuid pni pclmulqdq ssse3 fma cx16 pcid sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch invpcid_single pti ssbd ibrs ibpb stibp fsgsbase bmi1 hle avx2 smep bmi2 erms invpcid rtm rdseed adx smap xsaveopt flush_l1d arch_capabilities
bugs : cpu_meltdown spectre_v1 spectre_v2 spec_store_bypass l1tf mds swapgs taa itlb_multihit srbds
bogomips : 4589.37
clflush size : 64
cache_alignment : 64
address sizes : 39 bits physical, 48 bits virtual
power management:
...
Les informations sous « drapeaux » (en gras) contiennent une liste de capacités pour notre processeur. Ils sont tous un peu cryptiques et principalement destinés à être lus par du code machine, vous devrez donc enquêter sur la signification de chaque drapeau afin de comprendre toutes les informations de votre jeu d’instructions CPU.
Le seul inconvénient de cette méthode est qu’elle produira des informations pour chaque processeur logique, de sorte que le terminal peut devenir un peu spammé - vous pouvez toujours en diriger vers plus pour le nettoyer. Appuyez sur q pour quitter une fois que les informations commencent à devenir répétitives.
cat /proc/cpuinfo | more
De nos jours, la plupart des processeurs ont plusieurs cœurs, et le système d’exploitation percevra chacun d’eux comme un processeur individuel. Par conséquent, la méthode procinfo peut générer les mêmes informations 16 fois (en supposant que vous disposez d’un processeur à 8 cœurs avec multithreading).
Voici d’autres informations utiles, en plus du jeu d’instructions CPU, tirées du fichier virtuel /proc/cpuinfo :
- Marque et modèle du processeur : Intel(R) Core(TM) i5-5300U
- Vitesse du processeur : 2,30 GHz
- Nombre de cœurs de processeur : 2
- Nombre de processeurs logiques : 4
- Taille du cache du processeur : 3072 Ko
- Indicateurs activés pour le processeur (jeu d’instructions) – nous indique de quelles fonctionnalités le processeur est capable
Un autre utilitaire utile, que vous trouverez peut-être un peu plus facile à utiliser en raison de sa sortie concise, est la commande lscpu.
lscpu
Le résultat de cette commande ressemblera à ceci :
Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Little Endian
Address sizes: 39 bits physical, 48 bits virtual
CPU(s): 1
On-line CPU(s) list: 0
Thread(s) per core: 1
Core(s) per socket: 1
Socket(s): 1
NUMA node(s): 1
Vendor ID: GenuineIntel
CPU family: 6
Model: 61
Model name: Intel(R) Core(TM) i5-5300U CPU @ 2.30GHz
Stepping: 4
CPU MHz: 2294.688
BogoMIPS: 4589.37
Hypervisor vendor: KVM
Virtualization type: full
L1d cache: 32 KiB
L1i cache: 32 KiB
L2 cache: 256 KiB
L3 cache: 3 MiB
NUMA node0 CPU(s): 0
Vulnerability Itlb multihit: KVM: Mitigation: VMX unsupported
Vulnerability L1tf: Mitigation; PTE Inversion
Vulnerability Mds: Mitigation; Clear CPU buffers; SMT Host state u
nknown
Vulnerability Meltdown: Mitigation; PTI
Vulnerability Spec store bypass: Vulnerable
Vulnerability Spectre v1: Mitigation; usercopy/swapgs barriers and __user
pointer sanitization
Vulnerability Spectre v2: Mitigation; Full generic retpoline, STIBP disab
led, RSB filling
Vulnerability Srbds: Unknown: Dependent on hypervisor status
Vulnerability Tsx async abort: Not affected
Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtr
r pge mca cmov pat pse36 clflush mmx fxsr sse s
se2 ht syscall nx rdtscp lm constant_tsc rep_go
od nopl xtopology nonstop_tsc cpuid tsc_known_f
req pni pclmulqdq monitor ssse3 cx16 pcid sse4_
1 sse4_2 x2apic movbe popcnt aes xsave avx rdra
nd hypervisor lahf_lm abm 3dnowprefetch invpcid
_single pti fsgsbase avx2 invpcid rdseed md_cle
ar flush_l1d
Une fois de plus, nous avons marqué les drapeaux en gras, qui contiennent des informations sur le jeu d’instructions du processeur.
Cette commande nous fournit beaucoup d’informations similaires, mais certaines d’entre elles sont plus faciles à interpréter. En particulier, nous obtenons une meilleure répartition des cœurs de processeur. Voici comment interpréter :
- Sockets : 1 (il s’agit du nombre réel de processeurs physiques)
- Cœurs par socket : 2 (nous avons donc 2 cœurs au total)
- Threads par cœur : 2 (2 threads x 2 cœurs=4 processeurs logiques)
La commande lscpu nous donne également des informations sur notre hyperviseur et les différentes tailles de cache.
Il y a encore plus d’utilitaires de ligne de commande disponibles, mais ils ne sont pas installés par défaut sur certaines distributions, et toutes les informations dont nous avons besoin peuvent généralement être obtenues à partir des deux utilitaires couverts ci-dessus.
Vérifier le jeu d’instructions du processeur via l’application GUI
Si vous préférez utiliser une application graphique pour afficher les informations du processeur, plutôt que de jouer avec la ligne de commande, il existe un programme très pratique appelé « hardinfo » qui peut être installé sur n’importe quelle distribution Linux majeure. Vous pouvez utiliser la commande appropriée ci-dessous pour installer hardinfo avec le gestionnaire de paquets de votre système.
Pour installer hardinfo sur Ubuntu, Debian et Linux Mint :
sudo apt install hardinfo
Pour installer hardinfo sur Fedora, CentOS, AlmaLinux et Red Hat :
sudo dnf install hardinfo
Pour installer hardinfo sur Arch Linux et Manjaro :
sudo pacman -S hardinfo
Une fois installé, vous pouvez soit l’ouvrir à partir du lanceur d’applications de votre système, soit simplement exécuter la commande hardinfo dans un terminal.
hardinfo
L’application nous montre des informations sur tout le matériel de notre système, mais pour voir spécifiquement les informations sur le processeur, cliquez sur l’onglet du processeur dans le volet de gauche.
Mettez en surbrillance votre processeur et consultez le volet inférieur pour obtenir de nombreuses informations détaillées. Dans la capture d’écran ci-dessous, nous avons développé le volet d’informations pour obtenir de meilleures informations sur le jeu d’instructions du processeur.
Réflexions finales
Dans ce tutoriel, nous avons vu comment obtenir le jeu d’instructions pour nos processeurs installés sur un système Linux. Cela comprenait deux méthodes de ligne de commande, ainsi qu’une application graphique. Cela devrait vous en dire assez sur votre système, sans avoir besoin de consulter le manuel ou de rechercher les spécifications de votre PC.


