Les entrées sont logiques processeurs ; objets utilisés par le noyau en interne, pas nécessairement liés à des périphériques physiques. (Notez qu'ils ont tous le même physical id
.)
En d'autres termes, ils représentent les quatre cœurs d'un seul processeur Intel i3.
De plus, comme indiqué sur ce post (qui n'est pas exactement un doublon mais étroitement lié), ces cœurs sont également logiques - le processeur a deux cœurs physiquement mais prend en charge l'hyperthreading.
Notez que certains processeurs Intel (le i5 inclus) utilisent l'hyperthreading, un système où un seul processeur a (par exemple) 2 cœurs physiques, mais fournira 4 cœurs logiques - permettant au système d'exploitation de traiter le processeur comme ayant plus de cœurs qu'il ne le fait réellement fait.
Si votre système a le lscpu
outil (partie du récent util-linux ), il afficherait un résumé plus lisible par l'homme des processeurs installés, par exemple :
Thread(s) per core: 2
Core(s) per socket: 2
Socket(s): 1
Voici un script awk en ligne pour imprimer et extraire les données pertinentes de /proc/cpuinfo
:
cat /proc/cpuinfo | \
awk -v FS=':' ' \
/^physical id/ { if(nb_cpu<$2) { nb_cpu=$2 } } \
/^cpu cores/ { if(nb_cores<$2){ nb_cores=$2 } } \
/^processor/ { if(nb_units<$2){ nb_units=$2 } } \
/^model name/ { model=$2 } \
\
END{ \
nb_cpu=(nb_cpu+1); \
nb_units=(nb_units+1); \
\
print "CPU model:",model; \
print nb_cpu,"CPU,",nb_cores,"physical cores per CPU, total",nb_units,"logical CPU units" \
}'
Sortie pour un serveur hautes performances :
CPU model: Intel(R) Xeon(R) CPU X5650 @ 2.67GHz
2 CPU, 6 physical cores per CPU, total 24 logical CPU units
Sortie pour un ordinateur portable Core i5 :
CPU model: Intel(R) Core(TM) i5-2520M CPU @ 2.50GHz
1 CPU, 2 physical cores per CPU, total 4 logical CPU units