Die Einträge sind logisch Prozessoren; Objekte, die vom Kernel intern verwendet werden und nicht unbedingt an physische Geräte gebunden sind. (Beachten Sie, dass sie alle denselben physical id
haben .)
Mit anderen Worten, sie repräsentieren die vier Kerne einer einzelnen Intel i3 CPU.
Wie in diesem Beitrag erwähnt (der nicht genau ein Duplikat, aber eng verwandt ist), sind diese Kerne auch logisch – die CPU hat physisch zwei Kerne, unterstützt aber Hyperthreading.
Beachten Sie, dass einige Intel-Prozessoren (einschließlich i5) Hyperthreading verwenden, ein System, bei dem ein einzelner Prozessor (zum Beispiel) 2 physische Kerne hat, aber 4 logische Kerne bereitstellt, wodurch das Betriebssystem den Prozessor so behandeln kann, als hätte er mehr Kerne als er wirklich hat tut.
Wenn Ihr System über den lscpu
verfügt Tool (Teil des aktuellen util-linux ), würde es eine besser lesbare Zusammenfassung der installierten CPUs ausgeben, zum Beispiel:
Thread(s) per core: 2
Core(s) per socket: 2
Socket(s): 1
Hier ist ein Inline-Awk-Skript zum Schöndrucken und Extrahieren relevanter Daten aus /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" \
}'
Ausgabe für einen Hochleistungsserver:
CPU model: Intel(R) Xeon(R) CPU X5650 @ 2.67GHz
2 CPU, 6 physical cores per CPU, total 24 logical CPU units
Ausgabe für einen Core i5 Laptop:
CPU model: Intel(R) Core(TM) i5-2520M CPU @ 2.50GHz
1 CPU, 2 physical cores per CPU, total 4 logical CPU units