Mar*_*ark 7 central-processing-unit
请帮助我理解 /proc/cpuinfo 的输出。我的新服务器有双四核。/proc/cpuinfo 每个内核有两个条目(共 16 个条目):
processor : 9
vendor_id : GenuineIntel
cpu family : 6
model : 26
model name : Intel(R) Xeon(R) CPU X5570 @ 2.9
stepping : 5
cpu MHz : 1596.000
cache size : 8192 KB
physical id : 0
siblings : 8
core id : 0
cpu cores : 4
apicid : 1
initial apicid : 1
fpu : yes
fpu_exception : yes
cpuid level : 11
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe sys onstant_tsc arch_perfmon pebs bts rep_good xtopology tsc_reli i dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm dca lm ida tpr_shadow vnmi flexpriority ept vpid
bogomips : 5851.05
clflush size : 64
cache_alignment : 64
address sizes : 40 bits physical, 48 bits virtual
power management:
processor : 1
vendor_id : GenuineIntel
cpu family : 6
model : 26
model name : Intel(R) Xeon(R) CPU X5570 @ 2.9
stepping : 5
cpu MHz : 1596.000
cache size : 8192 KB
physical id : 0
siblings : 8
core id : 0
cpu cores : 4
apicid : 0
initial apicid : 0
fpu : yes
fpu_exception : yes
cpuid level : 11
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe sys onstant_tsc arch_perfmon pebs bts rep_good xtopology tsc_reli i dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm dca lm ida tpr_shadow vnmi flexpriority ept vpid
bogomips : 5851.05
clflush size : 64
cache_alignment : 64
address sizes : 40 bits physical, 48 bits virtual
power management:
Run Code Online (Sandbox Code Playgroud)
为什么每个核心列出两次?为什么第二个列表有 cpu MHz: 1596.000?
编辑
阅读下面的回复后,一个新问题,为什么所有 Physical id: 0(我猜是芯片)都报告 cpu MHz: 1596.000 而不是 2926 像 Physical id: 1?
更多编辑
查看我的内核配置,我启用了 CPU 频率缩放。那是罪魁祸首吗?禁用它是一个坏主意,还是在现实生活中不会有什么不同?
谢谢。
TRS*_*-80 12
每个内核有两个条目,因为 Nehalem(至强 55## 系列)每个内核支持两个硬件线程,在 Linux 中表现为两个处理器。CPU 频率各不相同,因为每个内核都可以独立计时;根据物理 id 值,您发布的两个似乎是不同的核心。
编辑:是的,频率缩放是芯片具有不同速度的原因。现在 Linux 的频率缩放非常好,因此启用它没有任何害处,并且可以节省电力(直接和降低冷却成本)。