Comment vérifier les détails du processeur et du processeur sur Linux-exemples de commandes

0 Comments

détails du processeur/Cpu

Les détails sur le processeur dont nous parlerons incluent, le nombre de cœurs, la disponibilité de l’Hyper threading,

pour trouver ces détails sur le cpu sur votre système peut être un peu difficile parce que la façon dont les différentes commandes les vérifient.

Les commandes que nous allons utiliser sont lscpu, /proc/cpuinfo et lstopo (hwloc).,
ces commandes affichent des informations détaillées sur les cœurs de processeur / unités de traitement.

Les exemples suivants expliqueraient comment interpréter la sortie de ces commandes.

1. Fournisseur et modèle du processeur

pour trouver le nom du fournisseur et du modèle du processeur, recherchez le fichier /proc/cpuinfo avec la commande grep.

$ cat /proc/cpuinfo | grep vendor | uniqvendor_id : GenuineIntel

c’est un processeur Intel. Ensuite, trouvez le nom du modèle qui peut être utilisé pour rechercher les spécifications exactes en ligne sur le site Web d »Intel.

$ cat /proc/cpuinfo | grep "model name" | uniqmodel name : Intel(R) Core(TM)2 Quad CPU Q8400 @ 2.66GHz

c’est un processeur » Core 2 Quad Q8400″.

2., Architecture

Les commandes lscpu signalent l’architecture.

$ lscpuArchitecture: x86_64CPU op-mode(s): 32-bit, 64-bitByte Order: Little Endian.....

L’architecture x86_64 qui est de 64 bits.

3. Fréquence

la fréquence/vitesse du processeur est signalée par lscpu et /proc/cpuinfo.

$ lscpu | grep -i mhzCPU MHz: 1998.000
$ cat /proc/cpuinfo | grep -i mhz | uniqcpu MHz : 1998.000
The frequency reported might be lower than the actual frequency specified for the processor because most modern processors operate at lower frequencies to save power. Under load condition they would switch to higher frequency.

Le changement de fréquence peut être vu par le suivi de la sortie de /proc/cpuinfo à l’aide de watch.,

$ watch -n 0.1 "cat /proc/cpuinfo | grep -i mhz"

exécutez la commande ci-dessus dans un terminal et pendant qu’il est en cours d’exécution, lancez une tâche intensive en cpu en parallèle et la fréquence augmenterait.

Every 0.1s: cat /proc/cpuinfo | grep -i mhz Sun Jun 29 15:28:38 2014cpu MHz : 2664.000cpu MHz : 2664.000cpu MHz : 2664.000cpu MHz : 2664.000

4. Nombre de cœurs

chaque cœur du processeur est un processeur ou une unité de traitement indépendante. Plusieurs cœurs permettent au processeur d’exécuter plusieurs instructions de programme en parallèle, augmentant ainsi la vitesse de traitement.

la commande lscpu indique les « cœurs par socket ».

Donc dans ce cas, le nombre de cœurs du processeur est 4.,
le fichier / proc / cpuinfo indique également le nombre de cœurs, mais il peut être un peu délicat et déroutant.

le simple fait de compter le nombre de processeurs peut donner des chiffres erronés.

$ cat /proc/cpuinfo | grep "processor"

dans le cas de processeurs hyper threadés, le nombre de processeurs que le système d’exploitation voit est le double du nombre de cœurs.

cependant/proc / cpuinfo a un champ nommé « core id » qui est un id unique pour chaque cœur dans un seul processeur., Compter l’id de noyau donnerait une indication claire du nombre de cœurs réels sur le processeur

$ cat /proc/cpuinfo | grep -i "core id"core id : 0core id : 2core id : 1core id : 3

Processeurs multiples

Rare, mais dans le cas où vous êtes sur un système qui a plusieurs processeurs physiques (Oui, cela signifie 2 processeurs ou plus installés sur la carte mère), alors les résultats de /proc/cpuinfo Dans le cas de plusieurs processeurs, l ‘ « id physique » indiquerait plusieurs valeurs.

$ cat /proc/cpuinfo | grep -i "physical id" | uniqphysical id : 0

S’il y a plus de 1 ID physique, il y a plusieurs processeurs physiques sur le système., Et vous devez compter les cœurs sur chaque processeur séparément.

5. Hyper threading

Hyper threading est une technologie Intel qui permet aux cœurs individuels de fonctionner comme 2 unités de traitement logiques. C’augmente la puissance de traitement de chaque cœur d’une manière limitée.

pour vérifier si le processeur a un hyper-threading, 2 valeurs différentes doivent être comparées. Le premier est le nombre de cœurs réels et le second est le nombre d’unités de traitement logiques.

Si le nombre de cœurs est égal au nombre d’unités de traitement tel que vu par le système d’exploitation, alors pas d’Hyper threading., Sinon, si le nombre d’unités de traitement est supérieur/deux fois le nombre de cœurs, alors oui hyper threading.

number of processing units = number of cores number of processing units = number of cores * 2 

Prenons un exemple d’un Core 2 Quad Q8400 processeur

Nombre de processeurs, comme indiqué par /proc/cpuinfo est 4

$ cat /proc/cpuinfo | grep processorprocessor : 0processor : 1processor : 2processor : 3

Nombre de cœurs de processeur » = 4 ainsi que les « frères et sœurs » = 4 et unique « de base » id = 4

Donc le nombre total d’unités de traitement = nombre réel de cœurs. Il n »y a donc pas d » Hyper threading sur ce processeur, et la même chose peut être confirmée à partir des spécifications du processeur sur le site Web d  » Intel.,

processeur Hyper-threadé

En cas d’hyper threading présent, la sortie de/proc / cpuinfo ou lscpu serait différente.

notez les « threads par cœur: 2 » qui indiquent qu’il y a 2 threads par cœur, avec un total de 4 cœurs. Ainsi, le nombre d’unités de traitement vues par le système d’exploitation est de 8.

jetons maintenant un coup d’œil à la sortie de /proc/cpuinfo.

Les « cœurs de processeur » = 4 et les frères et sœurs = 8, ce qui signifie qu’il y a 4 cœurs et 2 hyperthreads par cœur. Nombre de processeurs, comme indiqué par /proc/cpuinfo serait aussi 8.,

The HTT flag in dmidecode output and ht flag in /proc/cpuinfo flags might not correctly report hyper threading.

pour le processeur Core2Quad Q8400, dmidecode et /proc/cpuinfo affichent l’indicateur hyperthreading activé, même si l’Hyper threading n’est pas disponible sur le processeur.

Hwloc / lstopo

Hwloc (matériel Portable localité) est un petit utilitaire qui fournit la structure du processeur dans un joli diagramme visuel. Le diagramme montre le nombre de cœurs, les hyperthreads et la taille du cache. Un seul diagramme dit tout.,575b2e2d »>

le schéma ci-dessus montre clairement –

Cache L2 Total – 4096 KO – 4 Mo
cœurs totaux – 4
Unité de traitement par cœur-1

processeur Hyper – threadé
pour un processeur hyperthread, la sortie hwloc le diagramme pourrait ressembler à ceci

le diagramme indique

cache total L3 – 8 Mo
cœurs totaux – 4
unités de traitement par cœur-2

conclusion

pour en savoir plus sur les commandes de vérification des informations CPU sur Linux consultez ce post:
9 commandes


Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *