¿Por qué mis CPU no están numeradas secuencialmente?

¿Por qué mis CPU no están numeradas secuencialmente?

Estoy usando Arch Linux

Linux JamesPC 4.10.11-1-ARCH #1 SMP PREEMPT Tue Apr 18 08:39:42 CEST 2017 x86_64 GNU/Linux

Mientras trato de descubrir por qué el monitor de mi sistema de repente solo muestra una CPU (cuando debería tener seis): ingrese la descripción de la imagen aquí

Encontré esta rareza que creo puede estar causando que el monitor del sistema no funcione correctamente:

gato /proc/cpuinfo:

[gilmoreja@JamesPC ~]$ cat /proc/cpuinfo
processor   : 0
vendor_id   : AuthenticAMD
cpu family  : 21
model       : 1
model name  : AMD FX(tm)-6100 Six-Core Processor
stepping    : 2
microcode   : 0x600063d
cpu MHz     : 3311.103
cache size  : 2048 KB
physical id : 0
siblings    : 6
core id     : 0
cpu cores   : 3
apicid      : 16
initial apicid  : 0
fpu     : yes
fpu_exception   : yes
cpuid level : 13
wp      : yes
flags       : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf pni pclmulqdq monitor ssse3 cx16 sse4_1 sse4_2 popcnt aes xsave avx lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw ibs xop skinit wdt lwp fma4 nodeid_msr topoext perfctr_core perfctr_nb cpb hw_pstate vmmcall arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold
bugs        : fxsave_leak sysret_ss_attrs null_seg
bogomips    : 6624.13
TLB size    : 1536 4K pages
clflush size    : 64
cache_alignment : 64
address sizes   : 48 bits physical, 48 bits virtual
power management: ts ttp tm 100mhzsteps hwpstate cpb

processor   : 3
vendor_id   : AuthenticAMD
cpu family  : 21
model       : 1
model name  : AMD FX(tm)-6100 Six-Core Processor
stepping    : 2
microcode   : 0x600063d
cpu MHz     : 3311.103
cache size  : 2048 KB
physical id : 0
siblings    : 6
core id     : 1
cpu cores   : 3
apicid      : 17
initial apicid  : 1
fpu     : yes
fpu_exception   : yes
cpuid level : 13
wp      : yes
flags       : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf pni pclmulqdq monitor ssse3 cx16 sse4_1 sse4_2 popcnt aes xsave avx lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw ibs xop skinit wdt lwp fma4 nodeid_msr topoext perfctr_core perfctr_nb cpb hw_pstate vmmcall arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold
bugs        : fxsave_leak sysret_ss_attrs null_seg
bogomips    : 6623.14
TLB size    : 1536 4K pages
clflush size    : 64
cache_alignment : 64
address sizes   : 48 bits physical, 48 bits virtual
power management: ts ttp tm 100mhzsteps hwpstate cpb

processor   : 4
vendor_id   : AuthenticAMD
cpu family  : 21
model       : 1
model name  : AMD FX(tm)-6100 Six-Core Processor
stepping    : 2
microcode   : 0x600063d
cpu MHz     : 3311.103
cache size  : 2048 KB
physical id : 0
siblings    : 6
core id     : 2
cpu cores   : 3
apicid      : 18
initial apicid  : 2
fpu     : yes
fpu_exception   : yes
cpuid level : 13
wp      : yes
flags       : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf pni pclmulqdq monitor ssse3 cx16 sse4_1 sse4_2 popcnt aes xsave avx lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw ibs xop skinit wdt lwp fma4 nodeid_msr topoext perfctr_core perfctr_nb cpb hw_pstate vmmcall arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold
bugs        : fxsave_leak sysret_ss_attrs null_seg
bogomips    : 6623.22
TLB size    : 1536 4K pages
clflush size    : 64
cache_alignment : 64
address sizes   : 48 bits physical, 48 bits virtual
power management: ts ttp tm 100mhzsteps hwpstate cpb

processor   : 5
vendor_id   : AuthenticAMD
cpu family  : 21
model       : 1
model name  : AMD FX(tm)-6100 Six-Core Processor
stepping    : 2
microcode   : 0x600063d
cpu MHz     : 3311.103
cache size  : 2048 KB
physical id : 0
siblings    : 6
core id     : 3
cpu cores   : 3
apicid      : 19
initial apicid  : 3
fpu     : yes
fpu_exception   : yes
cpuid level : 13
wp      : yes
flags       : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf pni pclmulqdq monitor ssse3 cx16 sse4_1 sse4_2 popcnt aes xsave avx lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw ibs xop skinit wdt lwp fma4 nodeid_msr topoext perfctr_core perfctr_nb cpb hw_pstate vmmcall arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold
bugs        : fxsave_leak sysret_ss_attrs null_seg
bogomips    : 6623.22
TLB size    : 1536 4K pages
clflush size    : 64
cache_alignment : 64
address sizes   : 48 bits physical, 48 bits virtual
power management: ts ttp tm 100mhzsteps hwpstate cpb

processor   : 6
vendor_id   : AuthenticAMD
cpu family  : 21
model       : 1
model name  : AMD FX(tm)-6100 Six-Core Processor
stepping    : 2
microcode   : 0x600063d
cpu MHz     : 3311.103
cache size  : 2048 KB
physical id : 0
siblings    : 6
core id     : 4
cpu cores   : 3
apicid      : 20
initial apicid  : 4
fpu     : yes
fpu_exception   : yes
cpuid level : 13
wp      : yes
flags       : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf pni pclmulqdq monitor ssse3 cx16 sse4_1 sse4_2 popcnt aes xsave avx lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw ibs xop skinit wdt lwp fma4 nodeid_msr topoext perfctr_core perfctr_nb cpb hw_pstate vmmcall arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold
bugs        : fxsave_leak sysret_ss_attrs null_seg
bogomips    : 6623.23
TLB size    : 1536 4K pages
clflush size    : 64
cache_alignment : 64
address sizes   : 48 bits physical, 48 bits virtual
power management: ts ttp tm 100mhzsteps hwpstate cpb

processor   : 7
vendor_id   : AuthenticAMD
cpu family  : 21
model       : 1
model name  : AMD FX(tm)-6100 Six-Core Processor
stepping    : 2
microcode   : 0x600063d
cpu MHz     : 3311.103
cache size  : 2048 KB
physical id : 0
siblings    : 6
core id     : 5
cpu cores   : 3
apicid      : 21
initial apicid  : 5
fpu     : yes
fpu_exception   : yes
cpuid level : 13
wp      : yes
flags       : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf pni pclmulqdq monitor ssse3 cx16 sse4_1 sse4_2 popcnt aes xsave avx lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw ibs xop skinit wdt lwp fma4 nodeid_msr topoext perfctr_core perfctr_nb cpb hw_pstate vmmcall arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold
bugs        : fxsave_leak sysret_ss_attrs null_seg
bogomips    : 6623.22
TLB size    : 1536 4K pages
clflush size    : 64
cache_alignment : 64
address sizes   : 48 bits physical, 48 bits virtual
power management: ts ttp tm 100mhzsteps hwpstate cpb

lscpu:

[gilmoreja@JamesPC ~]$ lscpu
Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian
CPU(s):                6
On-line CPU(s) list:   0,3-7
Thread(s) per core:    2
Core(s) per socket:    3
Socket(s):             1
NUMA node(s):          1
Vendor ID:             AuthenticAMD
CPU family:            21
Model:                 1
Model name:            AMD FX(tm)-6100 Six-Core Processor
Stepping:              2
CPU MHz:               3311.103
BogoMIPS:              6624.13
Virtualization:        AMD-V
L1d cache:             16K
L1i cache:             64K
L2 cache:              2048K
L3 cache:              8192K
NUMA node0 CPU(s):     0,3-7
Flags:                 fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf pni pclmulqdq monitor ssse3 cx16 sse4_1 sse4_2 popcnt aes xsave avx lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw ibs xop skinit wdt lwp fma4 nodeid_msr topoext perfctr_core perfctr_nb cpb hw_pstate vmmcall arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold

Mis CPU no aparecen en la lista secuencialmente, sino que están numeradas 0, 3, 4, 5, 6 y 7.

¿Por qué mis CPU no están numeradas secuencialmente? ¿Cómo puedo solucionarlo para que así sean?

Respuesta1

El kernel de Linux asigna un número de CPU para cada CPU que figura en la tabla APIC de la máquina (consultecomandos para volcar la tabla de CPU). La tabla contiene un bit "habilitado" para cada núcleo. El FX-6100 en realidad se fabrica como un procesador de 8 núcleos, pero AMD deshabilita 2 núcleos.Tomshardware dice "Los siete procesadores FX basados ​​en Zambezi emplean el mismo silicio. Algunos de los procesadores tienen un módulo Bulldozer desactivado y otros tienen dos desactivados".Probablemente esto se haga cuando un núcleo falla en el control de calidad: el procesador de 8 núcleos puede tener algunos núcleos deshabilitados y aún así venderse como una pieza de especificaciones más bajas.

Dos núcleos deshabilitados coincidirían con su descripción de que los núcleos "0, 3, 4, 5, 6 y 7" son funcionales; los núcleos 1 y 2 estarían presentes pero deshabilitados en la tabla APIC. No tengo un FX-6100 para volcar la tabla y comprobarlo con seguridad, pero parece una explicación probable.

información relacionada