У меня есть система с I3-3220, который на основе информации Intel имеет 2 ядра, способные к 4 потокам каждый (или общее количество). Однако я заметил при наблюдении htop
с avconv
закодируйте выполнение, что было 16 логических присвоенных потоков. Я искал и читал многочисленные сообщения и здесь и на U&L и на основе того, что я считал, я попробовал
sudo dmidecode |egrep "Socket Designation: Proc|((Thread|Core) Count)"
который привел к:
Core Count: 2
Thread Count: 2
Так 4 логических общих количества CPU.
Но lscpu
дает мне:
Architecture: i686
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Little Endian
CPU(s): 4
On-line CPU(s) list: 0-3
Thread(s) per core: 2
Core(s) per socket: 2
Socket(s): 1
Vendor ID: GenuineIntel
CPU family: 6
Model: 58
Stepping: 9
CPU MHz: 3300.000
BogoMIPS: 6606.60
Virtualization: VT-x
L1d cache: 32K
L1i cache: 32K
L2 cache: 256K
L3 cache: 3072K
Так 8 логических общих количеств CPU.
Но sudo lshw -C cpu
возвраты:
*-cpu:0
description: CPU
product: Intel(R) Core(TM) i3-3220 CPU @ 3.30GHz
vendor: Intel Corp.
physical id: 43
bus info: cpu@0
version: 6.10.9
serial: 0003-06A9-0000-0000-0000-0000
slot: Intel(R) Core(TM) i3-3220 CPU @ 3.30GHz
size: 3300MHz
capacity: 3300MHz
width: 64 bits
clock: 100MHz
capabilities: x86-64 boot fpu fpu_exception wp vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx rdtscp constant_tsc arch_perfmon pebs bts xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm pcid sse4_1 sse4_2 popcnt tsc_deadline_timer xsave avx f16c lahf_lm arat epb xsaveopt pln pts dtherm tpr_shadow vnmi flexpriority ept vpid fsgsbase smep erms cpufreq
configuration: cores=2 enabledcores=1 id=0 threads=2
*-logicalcpu:0
description: Logical CPU
physical id: 0.1
width: 64 bits
capabilities: logical
*-logicalcpu:1
description: Logical CPU
physical id: 0.2
width: 64 bits
capabilities: logical
*-logicalcpu:2
description: Logical CPU
physical id: 0.3
width: 64 bits
capabilities: logical
*-logicalcpu:3
description: Logical CPU
physical id: 0.4
width: 64 bits
capabilities: logical
*-logicalcpu:4
description: Logical CPU
physical id: 0.5
width: 64 bits
capabilities: logical
*-logicalcpu:5
description: Logical CPU
physical id: 0.6
width: 64 bits
capabilities: logical
*-logicalcpu:6
description: Logical CPU
physical id: 0.7
width: 64 bits
capabilities: logical
*-logicalcpu:7
description: Logical CPU
physical id: 0.8
width: 64 bits
capabilities: logical
*-logicalcpu:8
description: Logical CPU
physical id: 0.9
width: 64 bits
capabilities: logical
*-logicalcpu:9
description: Logical CPU
physical id: 0.a
width: 64 bits
capabilities: logical
*-logicalcpu:10
description: Logical CPU
physical id: 0.b
width: 64 bits
capabilities: logical
*-logicalcpu:11
description: Logical CPU
physical id: 0.c
width: 64 bits
capabilities: logical
*-logicalcpu:12
description: Logical CPU
physical id: 0.d
width: 64 bits
capabilities: logical
*-logicalcpu:13
description: Logical CPU
physical id: 0.e
width: 64 bits
capabilities: logical
*-logicalcpu:14
description: Logical CPU
physical id: 0.f
width: 64 bits
capabilities: logical
*-logicalcpu:15
description: Logical CPU
physical id: 0.10
width: 64 bits
capabilities: logical
*-cpu:1
physical id: 1
bus info: cpu@1
version: 6.10.9
serial: 0003-06A9-0000-0000-0000-0000
size: 3GHz
capacity: 3GHz
capabilities: vmx ht cpufreq
configuration: id=0
*-logicalcpu:0
description: Logical CPU
physical id: 0.1
capabilities: logical
*-logicalcpu:1
description: Logical CPU
physical id: 0.2
capabilities: logical
*-logicalcpu:2
description: Logical CPU
physical id: 0.3
capabilities: logical
*-logicalcpu:3
description: Logical CPU
physical id: 0.4
capabilities: logical
*-logicalcpu:4
description: Logical CPU
physical id: 0.5
capabilities: logical
*-logicalcpu:5
description: Logical CPU
physical id: 0.6
capabilities: logical
*-logicalcpu:6
description: Logical CPU
physical id: 0.7
capabilities: logical
*-logicalcpu:7
description: Logical CPU
physical id: 0.8
capabilities: logical
*-logicalcpu:8
description: Logical CPU
physical id: 0.9
capabilities: logical
*-logicalcpu:9
description: Logical CPU
physical id: 0.a
capabilities: logical
*-logicalcpu:10
description: Logical CPU
physical id: 0.b
capabilities: logical
*-logicalcpu:11
description: Logical CPU
physical id: 0.c
capabilities: logical
*-logicalcpu:12
description: Logical CPU
physical id: 0.d
capabilities: logical
*-logicalcpu:13
description: Logical CPU
physical id: 0.e
capabilities: logical
*-logicalcpu:14
description: Logical CPU
physical id: 0.f
capabilities: logical
*-logicalcpu:15
description: Logical CPU
physical id: 0.10
capabilities: logical
Который, кажется, указывает на 16 логических CPU в информации о шине: cpu@0 + еще 16 в информации о шине: cpu@1 и что только 1 ядро включено. Далее перепутать проблему cat /proc/cpuinfo
возвраты:
processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 58
model name : Intel(R) Core(TM) i3-3220 CPU @ 3.30GHz
stepping : 9
microcode : 0x10
cpu MHz : 2800.000
cache size : 3072 KB
physical id : 0
siblings : 4
core id : 0
cpu cores : 2
apicid : 0
initial apicid : 0
fdiv_bug : no
f00f_bug : no
coma_bug : no
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 dts acpi mmx fxsr sse sse2 ss ht tm pbe nx rdtscp lm constant_tsc arch_perfmon pebs bts xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm pcid sse4_1 sse4_2 popcnt tsc_deadline_timer xsave avx f16c lahf_lm arat epb xsaveopt pln pts dtherm tpr_shadow vnmi flexpriority ept vpid fsgsbase smep erms
bogomips : 6606.60
clflush size : 64
cache_alignment : 64
address sizes : 36 bits physical, 48 bits virtual
power management:
processor : 1
vendor_id : GenuineIntel
cpu family : 6
model : 58
model name : Intel(R) Core(TM) i3-3220 CPU @ 3.30GHz
stepping : 9
microcode : 0x10
cpu MHz : 2400.000
cache size : 3072 KB
physical id : 0
siblings : 4
core id : 1
cpu cores : 2
apicid : 2
initial apicid : 2
fdiv_bug : no
f00f_bug : no
coma_bug : no
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 dts acpi mmx fxsr sse sse2 ss ht tm pbe nx rdtscp lm constant_tsc arch_perfmon pebs bts xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm pcid sse4_1 sse4_2 popcnt tsc_deadline_timer xsave avx f16c lahf_lm arat epb xsaveopt pln pts dtherm tpr_shadow vnmi flexpriority ept vpid fsgsbase smep erms
bogomips : 6606.60
clflush size : 64
cache_alignment : 64
address sizes : 36 bits physical, 48 bits virtual
power management:
processor : 2
vendor_id : GenuineIntel
cpu family : 6
model : 58
model name : Intel(R) Core(TM) i3-3220 CPU @ 3.30GHz
stepping : 9
microcode : 0x10
cpu MHz : 2600.000
cache size : 3072 KB
physical id : 0
siblings : 4
core id : 0
cpu cores : 2
apicid : 1
initial apicid : 1
fdiv_bug : no
f00f_bug : no
coma_bug : no
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 dts acpi mmx fxsr sse sse2 ss ht tm pbe nx rdtscp lm constant_tsc arch_perfmon pebs bts xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm pcid sse4_1 sse4_2 popcnt tsc_deadline_timer xsave avx f16c lahf_lm arat epb xsaveopt pln pts dtherm tpr_shadow vnmi flexpriority ept vpid fsgsbase smep erms
bogomips : 6606.60
clflush size : 64
cache_alignment : 64
address sizes : 36 bits physical, 48 bits virtual
power management:
processor : 3
vendor_id : GenuineIntel
cpu family : 6
model : 58
model name : Intel(R) Core(TM) i3-3220 CPU @ 3.30GHz
stepping : 9
microcode : 0x10
cpu MHz : 3300.000
cache size : 3072 KB
physical id : 0
siblings : 4
core id : 1
cpu cores : 2
apicid : 3
initial apicid : 3
fdiv_bug : no
f00f_bug : no
coma_bug : no
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 dts acpi mmx fxsr sse sse2 ss ht tm pbe nx rdtscp lm constant_tsc arch_perfmon pebs bts xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm pcid sse4_1 sse4_2 popcnt tsc_deadline_timer xsave avx f16c lahf_lm arat epb xsaveopt pln pts dtherm tpr_shadow vnmi flexpriority ept vpid fsgsbase smep erms
bogomips : 6606.60
clflush size : 64
cache_alignment : 64
address sizes : 36 bits physical, 48 bits virtual
power management:
Который, кажется мне указывает на центральные процессоры 0-3 с 4 одноуровневыми элементами каждый так 16 логических ЦП
Почему эти результаты, кажется, варьируются так и которому нужно доверять?
Вопрос о премии: Если у меня действительно только есть 1 из 2 ядер включенным, как я включаю второй?
"на основе информации Intel имеет 2 ядра, способные к 4 потокам каждый"
Не совсем это говорит, что 2 ядра и 4 потока не 4 потока на ядро, это означает, что имеет 2 ядра каждый с 2 потоками для в общей сложности 4 потоков.
У меня есть i3-2100 двухъядерное, это сопоставимо с Вашим, первой командой
sudo dmidecode |egrep "Socket Designation: Proc|((Thread|Core) Count)"
Дает мне тот же результат, 2 ядра CPU, каждого с 2 потоками
lscpu
говорит, что я имею
CPU(s): 4
On-line CPU(s) list: 0-3
Thread(s) per core: 2
Core(s) per socket: 2
Socket(s): 1
Я думаю, что Вы просто неправильно читаете это, потому что это говорит 4 cpus
но это означает общие потоки, это - плохой выбор условий, я был смущен также, когда я сначала смотрел :).
У Вас есть 1 сокет, 2 ядра и 2 потока на ядро, и это сообщает, что как 4 общих количества CPU, так, чтобы было корректно.
Что касается 16 логических ядер в cat /proc/cpuinfo
мой - то же, 4 CPU каждый с 4 одноуровневыми элементами, но я понятия не имел, что это означает, таким образом, я искал его и нашел это при отказе сервера
Количество одноуровневых элементов на процессоре является общим количеством модулей выполнения в том процессоре. Это будет включать и дополнительные ядра и гиперпоточность.
Например,
A Core 2 Duo will list siblings : 2. Dual core, no hyperthreading. A Xeon E5420 will list siblings : 4. Dual core, with hyperthreading. A Pentium 4 with hyperthreading will list siblings : 2. Single core, with hyperthreading.
Таким образом, казалось бы, что информация корректна, у Вас есть 4 общих потока так каждый плюс siblings
4 общих количества, и казалось бы, что об этом просто сообщают индивидуально для каждого потока.
Что касается sudo lshw -C cpu
мой вывод очень отличался, просто
*-cpu
product: Intel(R) Core(TM) i3-2100 CPU @ 3.10GHz
vendor: Intel Corp.
physical id: 1
bus info: cpu@0
size: 1614MHz
capacity: 3100MHz
width: 64 bits
capabilities: fpu fpu_exception wp vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp x86-64 constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm pcid sse4_1 sse4_2 popcnt tsc_deadline_timer xsave avx lahf_lm arat epb pln pts dtherm tpr_shadow vnmi flexpriority ept vpid xsaveopt cpufreq
Вы уверены, что это - команда, которую Вы выполнили?
"Почему эти результаты, кажется, варьируются так и которому нужно доверять?"
Они не варьируются, у них просто есть различные способы отобразить информацию, я просто использовал бы lscpu
как самое "доверяемое", потому что это является самым легким считать и должно иметь любую информацию, в которой Вы нуждаетесь, но они все корректны.
"Вопрос о премии: Если у меня действительно только есть 1 из 2 ядер включенным, как я включаю второй?"
И Ваши ядра активны и поточная обработка hyper, включен, можно выключить hyper, распараллеливающий в Вашем bios
в разделе оборудования это должно приятно половина количества CPU, таким образом, можно проверить различие легко в терминале с lscpu
.
Отключить и включить одноядерному использованию эти команды
Отключите:
echo 0 | sudo tee /sys/devices/system/cpu/cpu0/online
Включите:
echo 1 | sudo tee /sys/devices/system/cpu/cpu0/online
Часть cpu0
первая строка processor
в cat /proc/cpuinfo
, просто подкачайте 0 для ядра / распараллеливают Вас, хотят отключить.