System 1: Notebook
Detect the installed CPU:
$ cat /proc/cpuinfo | grep "model name" | head -1
model name : Intel(R) Core(TM) i5-2520M CPU @ 2.50GHz
- no. of Cores 2
- no. of Threads 4
Detect Cores and Threads:
$ sudo dmidecode -t processor | grep -E '(Core Count|Thread Count)'
Core Count: 2
Thread Count: 4
Conclusion: The core count and thread count fits with the datasheet.
System 2: Desktop PC
Detect the installed CPU:
$ cat /proc/cpuinfo | grep "model name" | head -1
model name : Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz
- no. of Cores 4
- no. of Threads 8
Detect Cores and Threads:
$ sudo dmidecode -t processor | grep -E '(Core Count|Thread Count)'
Core Count: 4
Thread Count: 2
Conclusion: The core count and thread count does not fit with the datasheet.
Questions
- How to read the Intel datasheets and the output of
dmidecode
? - How many cores do I have?
- How many thread is each core having?
- How many thread is the whole system having?
[Edit] Update 1
Desktop PC
$ lscpu | grep -i -E "^CPU\(s\):|core|socket"
CPU(s): 8
Thread(s) per core: 2
Core(s) per socket: 4
Socket(s): 1
Reading from bottom to top:
- I have 1 socket with 4 cors, each with 2 threads => 8 threads on total (CPUs)
Conclusion: The core count and thread count fits with the datasheet.
Notebook
$lscpu | grep -i -E "^CPU\(s\):|core|socket"
CPU(s): 4
Thread(s) per core: 2
Core(s) per socket: 2
Socket(s): 1
Reading from bottom to top:
- I have 1 socket with 2 cors, each with 2 threads => 4 threads in total (CPUs)
Conclusion: The core count and thread count fits with the datasheet.
[EDIT] Update 2
$ sudo dmidecode -t processor
# dmidecode 2.12
SMBIOS 2.7 present.
Handle 0x0041, DMI type 4, 42 bytes
Processor Information
Socket Designation: SOCKET 0
Type: Central Processor
Family: Core i7
Manufacturer: Intel
ID: C3 06 03 00 FF FB EB BF
Signature: Type 0, Family 6, Model 60, Stepping 3
Flags:
FPU (Floating-point unit on-chip)
VME (Virtual mode extension)
DE (Debugging extension)
PSE (Page size extension)
TSC (Time stamp counter)
MSR (Model specific registers)
PAE (Physical address extension)
MCE (Machine check exception)
CX8 (CMPXCHG8 instruction supported)
APIC (On-chip APIC hardware supported)
SEP (Fast system call)
MTRR (Memory type range registers)
PGE (Page global enable)
MCA (Machine check architecture)
CMOV (Conditional move instruction supported)
PAT (Page attribute table)
PSE-36 (36-bit page size extension)
CLFSH (CLFLUSH instruction supported)
DS (Debug store)
ACPI (ACPI supported)
MMX (MMX technology supported)
FXSR (FXSAVE and FXSTOR instructions supported)
SSE (Streaming SIMD extensions)
SSE2 (Streaming SIMD extensions 2)
SS (Self-snoop)
HTT (Multi-threading)
TM (Thermal monitor supported)
PBE (Pending break enabled)
Version: Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz
Voltage: 1.1 V
External Clock: 100 MHz
Max Speed: 7000 MHz
Current Speed: 3700 MHz
Status: Populated, Enabled
Upgrade: Other
L1 Cache Handle: 0x0004
L2 Cache Handle: 0x0005
L3 Cache Handle: 0x0006
Serial Number: Not Specified
Asset Tag: Fill By OEM
Part Number: Fill By OEM
Core Count: 4
Core Enabled: 1
Thread Count: 2
Characteristics:
64-bit capable