CPU number not equal to threads per core X cores per socket X sockets
18
votes
1
answer
2323
views
As far as I understand, the number of CPUs in my computer should be given by
CPU = Thread(s) per core x Core(s) per socket x Socket(s)
Here are the first few lines of the
lscpu
output:
$ lscpu | head -n18
Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
Address sizes: 46 bits physical, 48 bits virtual
Byte Order: Little Endian
CPU(s): 22
On-line CPU(s) list: 0-21
Vendor ID: GenuineIntel
Model name: Intel(R) Core(TM) Ultra 7 155H
CPU family: 6
Model: 170
Thread(s) per core: 2
Core(s) per socket: 16
Socket(s): 1
Stepping: 4
CPU(s) scaling MHz: 14%
CPU max MHz: 4800.0000
CPU min MHz: 400.0000
BogoMIPS: 5990.40
What’s going on? 2 × 16 = 32, not 22. Even running nproc --all
shows 22.
Am I missing something?
Asked by Miguel
(183 rep)
Apr 1, 2025, 11:27 AM
Last activity: Apr 16, 2025, 07:56 AM
Last activity: Apr 16, 2025, 07:56 AM