Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Do others have this stange numbering of CPU cores? [SOLVED]
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Kernel & Hardware
View previous topic :: View next topic  
Author Message
Zucca
Moderator
Moderator


Joined: 14 Jun 2007
Posts: 4036
Location: Rasi, Finland

PostPosted: Wed Apr 09, 2025 7:45 pm    Post subject: Do others have this stange numbering of CPU cores? [SOLVED] Reply with quote

Just take a careful look at this:
Code:
coretemp-isa-0000                                       
Adapter: ISA adapter                                   
Package id 0:  +51.0°C  (high = +95.0°C, crit = +105.0°C
Core 0:        +44.0°C  (high = +95.0°C, crit = +105.0°C
Core 1:        +45.0°C  (high = +95.0°C, crit = +105.0°C
Core 2:        +45.0°C  (high = +95.0°C, crit = +105.0°C
Core 3:        +45.0°C  (high = +95.0°C, crit = +105.0°C
Core 4:        +45.0°C  (high = +95.0°C, crit = +105.0°C
Core 8:        +44.0°C  (high = +95.0°C, crit = +105.0°C
Core 9:        +44.0°C  (high = +95.0°C, crit = +105.0°C
Core 10:       +47.0°C  (high = +95.0°C, crit = +105.0°C
Core 11:       +45.0°C  (high = +95.0°C, crit = +105.0°C
Core 12:       +44.0°C  (high = +95.0°C, crit = +105.0°C
Core 16:       +49.0°C  (high = +95.0°C, crit = +105.0°C
Core 17:       +45.0°C  (high = +95.0°C, crit = +105.0°C
Core 18:       +44.0°C  (high = +95.0°C, crit = +105.0°C
Core 19:       +43.0°C  (high = +95.0°C, crit = +105.0°C
Core 20:       +44.0°C  (high = +95.0°C, crit = +105.0°C
Core 24:       +49.0°C  (high = +95.0°C, crit = +105.0°C
Core 25:       +44.0°C  (high = +95.0°C, crit = +105.0°C
Core 26:       +44.0°C  (high = +95.0°C, crit = +105.0°C
Core 27:       +44.0°C  (high = +95.0°C, crit = +105.0°C
Core 28:       +44.0°C  (high = +95.0°C, crit = +105.0°C


Code:
│d-mill ~ # lscpu | awk '{print; if ($1 == "BogoMIPS:") exit}'
│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):                               80
│On-line CPU(s) list:                  0-79
│Vendor ID:                            GenuineIntel
│Model name:                           Intel(R) Xeon(R) CPU E5-2698 v4 @ 2.20GHz
│CPU family:                           6
│Model:                                79
│Thread(s) per core:                   2
│Core(s) per socket:                   20
│Socket(s):                            2
│Stepping:                             1
│CPU(s) scaling MHz:                   35%
│CPU max MHz:                          3600.0000
│CPU min MHz:                          1200.0000
│BogoMIPS:                             4389.79
So core count should be from 0 to 19 (or 1 to 20).
What's happening here?
_________________
..: Zucca :..

My gentoo installs:
init=/sbin/openrc-init
-systemd -logind -elogind seatd

Quote:
I am NaN! I am a man!


Last edited by Zucca on Thu Apr 10, 2025 6:43 am; edited 1 time in total
Back to top
View user's profile Send private message
szatox
Advocate
Advocate


Joined: 27 Aug 2013
Posts: 3602

PostPosted: Wed Apr 09, 2025 8:18 pm    Post subject: Reply with quote

Multicore CPUs are manufactured with a designed number of cores, tested, and have faulty cores disabled and a label with a matching rating slapped on them.

I suppose what you're seeing there is a result of that procedure.
The missing cores are dead, but the die is still functional, so it's better to make some money advertising the good cores than pay to dispose of the whole package.
I know some processors have been restricted without the need for cores to be faulty, simply to sell them at a discount (e.g. because there was more demand for dual core than quad on a consumer market - I know, I know, old times), and vaguely remember news about overclockers unlocking them by cutting some bridges or drawing new traces with pencils.
_________________
Make Computing Fun Again
Back to top
View user's profile Send private message
Zucca
Moderator
Moderator


Joined: 14 Jun 2007
Posts: 4036
Location: Rasi, Finland

PostPosted: Wed Apr 09, 2025 8:46 pm    Post subject: Reply with quote

szatox wrote:
Multicore CPUs are manufactured with a designed number of cores, tested, and have faulty cores disabled and a label with a matching rating slapped on them.
Yes. This is what I thought too, but Broawell does not have cpus which have that many cores.
Even Broadwell-EX is capped at 24 cores.

szatox wrote:
and vaguely remember news about overclockers unlocking them by cutting some bridges or drawing new traces with pencils.
Yes. This was possible. But if the enabled core really was a faulty one, you might get nasty errors. ;)
_________________
..: Zucca :..

My gentoo installs:
init=/sbin/openrc-init
-systemd -logind -elogind seatd

Quote:
I am NaN! I am a man!
Back to top
View user's profile Send private message
pingtoo
Veteran
Veteran


Joined: 10 Sep 2021
Posts: 1612
Location: Richmond Hill, Canada

PostPosted: Wed Apr 09, 2025 9:03 pm    Post subject: Reply with quote

Your lscpu output said there are two (2) sockets on your mother board and it seems both were occupied. So I assume you should see 40 cores?
Back to top
View user's profile Send private message
szatox
Advocate
Advocate


Joined: 27 Aug 2013
Posts: 3602

PostPosted: Wed Apr 09, 2025 9:15 pm    Post subject: Reply with quote

Zucca wrote:
szatox wrote:
Multicore CPUs are manufactured with a designed number of cores, tested, and have faulty cores disabled and a label with a matching rating slapped on them.
Yes. This is what I thought too, but Broawell does not have cpus which have that many cores.
Even Broadwell-EX is capped at 24 cores.
When I pasted your cpu into search it showed my 16 cores + HT for a total of 32 (virtual) cores reported to the OS. That's more than your 20.
Looks good to me. (Even though it's still a guess).

One more things, since you have more than 1 socket: do numbers in the other socket fit in the gaps?
Maybe there is something about discovery order?
_________________
Make Computing Fun Again
Back to top
View user's profile Send private message
Zucca
Moderator
Moderator


Joined: 14 Jun 2007
Posts: 4036
Location: Rasi, Finland

PostPosted: Wed Apr 09, 2025 10:40 pm    Post subject: Reply with quote

The CPUs are E5 2698 v4's

Here's the full output of sensors:
Code:
coretemp-isa-0000
Adapter: ISA adapter
Package id 0:  +44.0°C  (high = +95.0°C, crit = +105.0°C)
Core 0:        +38.0°C  (high = +95.0°C, crit = +105.0°C)
Core 1:        +38.0°C  (high = +95.0°C, crit = +105.0°C)
Core 2:        +38.0°C  (high = +95.0°C, crit = +105.0°C)
Core 3:        +37.0°C  (high = +95.0°C, crit = +105.0°C)
Core 4:        +38.0°C  (high = +95.0°C, crit = +105.0°C)
Core 8:        +38.0°C  (high = +95.0°C, crit = +105.0°C)
Core 9:        +38.0°C  (high = +95.0°C, crit = +105.0°C)
Core 10:       +39.0°C  (high = +95.0°C, crit = +105.0°C)
Core 11:       +38.0°C  (high = +95.0°C, crit = +105.0°C)
Core 12:       +38.0°C  (high = +95.0°C, crit = +105.0°C)
Core 16:       +38.0°C  (high = +95.0°C, crit = +105.0°C)
Core 17:       +37.0°C  (high = +95.0°C, crit = +105.0°C)
Core 18:       +38.0°C  (high = +95.0°C, crit = +105.0°C)
Core 19:       +37.0°C  (high = +95.0°C, crit = +105.0°C)
Core 20:       +38.0°C  (high = +95.0°C, crit = +105.0°C)
Core 24:       +37.0°C  (high = +95.0°C, crit = +105.0°C)
Core 25:       +37.0°C  (high = +95.0°C, crit = +105.0°C)
Core 26:       +37.0°C  (high = +95.0°C, crit = +105.0°C)
Core 27:       +37.0°C  (high = +95.0°C, crit = +105.0°C)
Core 28:       +38.0°C  (high = +95.0°C, crit = +105.0°C)

amdgpu-pci-0500
Adapter: PCI adapter
vddgfx:      843.00 mV
fan1:         712 RPM  (min =  400 RPM, max = 4900 RPM)
edge:         +34.0°C  (crit = +85.0°C, hyst = -273.1°C)
                       (emerg = +90.0°C)
junction:     +35.0°C  (crit = +105.0°C, hyst = -273.1°C)
                       (emerg = +110.0°C)
mem:          +37.0°C  (crit = +95.0°C, hyst = -273.1°C)
                       (emerg = +100.0°C)
PPT:           3.00 W  (cap = 110.00 W)
pwm1:             12%
sclk:           9 MHz
mclk:         167 MHz

nvme-pci-0900
Adapter: PCI adapter
Composite:    +45.9°C 

coretemp-isa-0001
Adapter: ISA adapter
Package id 1:  +60.0°C  (high = +95.0°C, crit = +105.0°C)
Core 0:        +53.0°C  (high = +95.0°C, crit = +105.0°C)
Core 1:        +54.0°C  (high = +95.0°C, crit = +105.0°C)
Core 2:        +53.0°C  (high = +95.0°C, crit = +105.0°C)
Core 3:        +53.0°C  (high = +95.0°C, crit = +105.0°C)
Core 4:        +54.0°C  (high = +95.0°C, crit = +105.0°C)
Core 8:        +54.0°C  (high = +95.0°C, crit = +105.0°C)
Core 9:        +53.0°C  (high = +95.0°C, crit = +105.0°C)
Core 10:       +53.0°C  (high = +95.0°C, crit = +105.0°C)
Core 11:       +54.0°C  (high = +95.0°C, crit = +105.0°C)
Core 12:       +55.0°C  (high = +95.0°C, crit = +105.0°C)
Core 16:       +53.0°C  (high = +95.0°C, crit = +105.0°C)
Core 17:       +53.0°C  (high = +95.0°C, crit = +105.0°C)
Core 18:       +53.0°C  (high = +95.0°C, crit = +105.0°C)
Core 19:       +53.0°C  (high = +95.0°C, crit = +105.0°C)
Core 20:       +53.0°C  (high = +95.0°C, crit = +105.0°C)
Core 24:       +54.0°C  (high = +95.0°C, crit = +105.0°C)
Core 25:       +53.0°C  (high = +95.0°C, crit = +105.0°C)
Core 26:       +52.0°C  (high = +95.0°C, crit = +105.0°C)
Core 27:       +53.0°C  (high = +95.0°C, crit = +105.0°C)
Core 28:       +53.0°C  (high = +95.0°C, crit = +105.0°C)

dell_smm-isa-00de
Adapter: ISA adapter
Processor Fan: 1172 RPM  (min =    0 RPM, max = 4520 RPM)
Processor Fan: 1250 RPM  (min =    0 RPM, max = 5755 RPM)
Other Fan:      838 RPM  (min =    0 RPM, max = 5000 RPM)
CPU:            +44.0°C 
CPU:            +60.0°C 
SODIMM:         +22.0°C 
SODIMM:         +36.0°C 
SODIMM:         +45.0°C 
pwm1:              128%
pwm2:              128%
pwm3:              128%

nvme-pci-0200
Adapter: PCI adapter
Composite:    +43.9°C


My other intel box shows normal looking sensors output. Although it only has 4-core cpu with no hyper threading.
This workstation is the only intel machine I have which does have hyperthreading. I would assume there being no sensor data for the virtual, hyperthreaded, CPUs... I could be wrong, just an assumption.
_________________
..: Zucca :..

My gentoo installs:
init=/sbin/openrc-init
-systemd -logind -elogind seatd

Quote:
I am NaN! I am a man!
Back to top
View user's profile Send private message
szatox
Advocate
Advocate


Joined: 27 Aug 2013
Posts: 3602

PostPosted: Wed Apr 09, 2025 11:06 pm    Post subject: Reply with quote

Huh... So you actually have 20 physical cores and 40 threads, and only 20 sensors? That's weird. Well, by human standards it does make perfect sense, but in computerland it kinda complicates things.

Hmm... The other one has the same numbers, so it is not random. And they are in a repeating pattern of 5+/3-.
Maybe they are trying to spread the heat generation as much as possible, and the remaining cores are considered spares? Dunno, I'm out of ideas.
BTW, you have more funny metrics there:
Code:
pwm1:              128%
pwm2:              128%
pwm3:              128%

Putting a thermal threshold on absolute zero is an interesting choice as well :lol: whatever that "hyst" is supposed to stand for.
Code:
edge:         +34.0°C  (crit = +85.0°C, hyst = -273.1°C)

_________________
Make Computing Fun Again
Back to top
View user's profile Send private message
spica
Guru
Guru


Joined: 04 Jun 2021
Posts: 355

PostPosted: Wed Apr 09, 2025 11:34 pm    Post subject: Reply with quote

Zucca, try to compare the numbers with `core id`s in /proc/cpuinfo
I guess you'll see the same numbering gaps there
Back to top
View user's profile Send private message
Zucca
Moderator
Moderator


Joined: 14 Jun 2007
Posts: 4036
Location: Rasi, Finland

PostPosted: Wed Apr 09, 2025 11:39 pm    Post subject: Reply with quote

Yes. These are oldish server/workstation CPUs. 20-cores each.
Yeah, and the three temp sensors on RAM does not make any sense whatsoever. Each cpu has two slots on each side, totalling 8 sticks.
I really don't know how it pulled three. Four would make sense...
_________________
..: Zucca :..

My gentoo installs:
init=/sbin/openrc-init
-systemd -logind -elogind seatd

Quote:
I am NaN! I am a man!
Back to top
View user's profile Send private message
Zucca
Moderator
Moderator


Joined: 14 Jun 2007
Posts: 4036
Location: Rasi, Finland

PostPosted: Wed Apr 09, 2025 11:50 pm    Post subject: Reply with quote

spica wrote:
Zucca, try to compare the numbers with `core id`s in /proc/cpuinfo
I guess you'll see the same numbering gaps there
Sure enough:
Code:
d-mill ~ # egrep 'processor|core id' /proc/cpuinfo | head -n 40
processor       : 0
core id         : 0
processor       : 1
core id         : 1
processor       : 2
core id         : 2
processor       : 3
core id         : 3
processor       : 4
core id         : 4
processor       : 5
core id         : 8
processor       : 6
core id         : 9
processor       : 7
core id         : 10
processor       : 8
core id         : 11
processor       : 9
core id         : 12
processor       : 10
core id         : 16
processor       : 11
core id         : 17
processor       : 12
core id         : 18
processor       : 13
core id         : 19
processor       : 14
core id         : 20
processor       : 15
core id         : 24
processor       : 16
core id         : 25
processor       : 17
core id         : 26
processor       : 18
core id         : 27
processor       : 19
core id         : 28
Core ids have those same gaps.
While on my AMD laptop:
Code:
zucca@NBLK-WAX9X ~ $ egrep 'processor|core id' /proc/cpuinfo
processor   : 0
core id      : 0
processor   : 1
core id      : 0
processor   : 2
core id      : 1
processor   : 3
core id      : 1
processor   : 4
core id      : 2
processor   : 5
core id      : 2
processor   : 6
core id      : 3
processor   : 7
core id      : 3
So on the laptop core ids count less. Makes sense.

Laptop still runs on 6.1 kernel, workstation runs 6.6.

I'll update laptop kernel sometime soon to 6.6 too. We'll see if this same thing happens then too.
_________________
..: Zucca :..

My gentoo installs:
init=/sbin/openrc-init
-systemd -logind -elogind seatd

Quote:
I am NaN! I am a man!
Back to top
View user's profile Send private message
spica
Guru
Guru


Joined: 04 Jun 2021
Posts: 355

PostPosted: Thu Apr 10, 2025 12:04 am    Post subject: Reply with quote

This is example for Intel(R) Core(TM) Ultra 7 155H which is a laptop CPU, it also has gaps for P-cores

Code:
$ perl -nle 'BEGIN{$/="\n\n"}print "proc:$1\tcore:$2" if m;processor\s*:\s*(\d+).*?core id\s*:\s*(\d+);gs' /proc/cpuinfo

proc:0   core:16
proc:1   core:8
proc:2   core:8
proc:3   core:12
proc:4   core:12
proc:5   core:16
proc:6   core:20
proc:7   core:20
proc:8   core:24
proc:9   core:24
proc:10   core:28
proc:11   core:28
proc:12   core:0
proc:13   core:1
proc:14   core:2
proc:15   core:3
proc:16   core:4
proc:17   core:5
proc:18   core:6
proc:19   core:7
proc:20   core:32
proc:21   core:33


procs 0-11 are 6 P-cores
procs 12-19 are 8 E-cores
procs 20-21 are 2 LPE cores
Back to top
View user's profile Send private message
mirekm
Apprentice
Apprentice


Joined: 12 Feb 2004
Posts: 220
Location: Gliwice

PostPosted: Thu Apr 10, 2025 5:48 am    Post subject: Reply with quote

On Intel(R) Core(TM) i9-14900HX it looks like that:

Code:
proc:0  core:0
proc:1  core:0
proc:2  core:4
proc:3  core:4
proc:4  core:8
proc:5  core:8
proc:6  core:12
proc:7  core:12
proc:8  core:16
proc:9  core:16
proc:10 core:20
proc:11 core:20
proc:12 core:24
proc:13 core:24
proc:14 core:28
proc:15 core:28
proc:16 core:32
proc:17 core:33
proc:18 core:34
proc:19 core:35
proc:20 core:36
proc:21 core:37
proc:22 core:38
proc:23 core:39
proc:24 core:40
proc:25 core:41
proc:26 core:42
proc:27 core:43
proc:28 core:44
proc:29 core:45
proc:30 core:46
proc:31 core:47
Back to top
View user's profile Send private message
Zucca
Moderator
Moderator


Joined: 14 Jun 2007
Posts: 4036
Location: Rasi, Finland

PostPosted: Thu Apr 10, 2025 6:40 am    Post subject: Reply with quote

Ok, so this is pretty normal after all. Thanks!
_________________
..: Zucca :..

My gentoo installs:
init=/sbin/openrc-init
-systemd -logind -elogind seatd

Quote:
I am NaN! I am a man!
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Kernel & Hardware All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum