top - 08:43:16 up 96 days, 22:16, 1 user, load average: 4.03, 3.92, 3.98
Tasks: 199 total, 1 running, 198 sleeping, 0 stopped, 0 zombie
Cpu0 : 0.0%us, 0.5%sy, 50.0%ni, 49.5%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Cpu1 : 0.0%us, 3.9%sy, 46.8%ni, 49.3%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Cpu2 : 0.0%us, 3.0%sy, 47.5%ni, 49.5%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Cpu3 : 0.0%us, 5.0%sy, 45.5%ni, 49.5%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
3593 foldinga 39 19 276m 80m 2972 S 402 1.0 12:55.42 FahCore_a3.exe
Run Code Online (Sandbox Code Playgroud)
现在,top 怎么会说它使用了 100% 的 CPU(400% / 4 个内核),而正好有一半的处理器空闲?
processor : 3
vendor_id : GenuineIntel
cpu family : 6
model : 30
model name : Intel(R) Xeon(R) CPU X3440 @ 2.53GHz
stepping : 5
cpu MHz : 2526.932
cache size : 8192 KB
physical id : 0
siblings : 4
core id : 3
cpu cores : 4
apicid : 6
initial apicid : 6
fpu : yes
fpu_exception : yes
cpuid level : 11
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 syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf pni dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm sse4_1 sse4_2 popcnt lahf_lm ida dts tpr_shadow vnmi flexpriority ept vpid
bogomips : 5054.02
clflush size : 64
cache_alignment : 64
address sizes : 36 bits physical, 48 bits virtual
power management:
Run Code Online (Sandbox Code Playgroud)
编辑:为了响应 i_grok 和 Max Alginin,我确保在服务器上启用了超线程。一旦我打开它,这里是 top 现在的结果。请注意,相同的症状很明显。
top - 10:17:01 up 47 days, 10:28, 3 users, load average: 7.93, 7.96, 8.02
Tasks: 150 total, 1 running, 149 sleeping, 0 stopped, 0 zombie
Cpu0 : 0.0%us, 2.8%sy, 42.0%ni, 55.2%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Cpu1 : 0.0%us, 2.2%sy, 42.5%ni, 55.2%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Cpu2 : 1.2%us, 3.7%sy, 95.1%ni, 0.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Cpu3 : 0.0%us, 1.7%sy, 43.1%ni, 55.2%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Cpu4 : 0.0%us, 1.1%sy, 43.6%ni, 55.2%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Cpu5 : 0.0%us, 0.0%sy, 44.8%ni, 55.2%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Cpu6 : 0.0%us, 2.2%sy, 42.5%ni, 55.2%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Cpu7 : 0.0%us, 1.7%sy, 43.1%ni, 55.2%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 8177700k total, 6258704k used, 1918996k free, 29248k buffers
Swap: 0k total, 0k used, 0k free, 5203172k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
8132 foldinga 39 19 557m 99m 3060 S 796 1.2 1510:53 FahCore_a3.exe
Run Code Online (Sandbox Code Playgroud)
扩展 Max 的回答:当确实只有一个物理内核时,具有超线程的处理器会向操作系统报告两个内核。Linux 有 4 个内核,但您的处理器有 2 个物理内核。
物理内核具有先进的调度能力和一些额外的晶体管来处理第二个线程,但对于许多处理器密集型应用程序,超线程并没有提供实际的好处。
在我的领域,我们对将在系统上运行的应用程序进行基准测试,并在 BIOS 中禁用影响性能的超线程。
编辑:
如果我使用cat /dev/urandom > /dev/null
这里加载一半的内核,这就是我在运行 CentOS 6 的现代 Xeon 上得到的:
top - 19:32:38 up 1 day, 8:17, 3 users, load average: 12.13, 8.73, 4.07
Tasks: 694 total, 13 running, 681 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.0%us, 50.4%sy, 0.0%ni, 49.6%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 49552656k total, 2693452k used, 46859204k free, 186448k buffers
Swap: 15999992k total, 0k used, 15999992k free, 469560k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
21193 root 20 0 98.5m 560 452 R 100.0 0.0 6:23.31 cat
21194 root 20 0 98.5m 560 452 R 100.0 0.0 6:22.76 cat
21195 root 20 0 98.5m 560 452 R 100.0 0.0 6:22.38 cat
21201 root 20 0 98.5m 560 452 R 100.0 0.0 6:21.98 cat
21202 root 20 0 98.5m 560 452 R 100.0 0.0 6:21.62 cat
21203 root 20 0 98.5m 560 452 R 100.0 0.0 6:21.36 cat
21206 root 20 0 98.5m 560 452 R 100.0 0.0 6:20.43 cat
21187 root 20 0 98.5m 560 452 R 99.6 0.0 6:24.45 cat
21204 root 20 0 98.5m 560 452 R 99.6 0.0 6:21.03 cat
21205 root 20 0 98.5m 560 452 R 99.6 0.0 6:20.73 cat
21213 root 20 0 98.5m 560 452 R 99.6 0.0 6:20.09 cat
21214 root 20 0 98.5m 560 452 R 99.6 0.0 6:19.70 cat
Run Code Online (Sandbox Code Playgroud)
已经过去四年多了,公平地说,我完全忘记了这个问题,只是因为我看到我收到了一个值得注意的问题徽章才回来。
该问题与超线程无关,但正如我不断向响应者指出的那样,这并不是50 % 空闲的原因。
原因与内核动态刻度配置配置不当有关。我正在运行 Gentoo 并使用定制的内核。在我升级内核后,在 2012 年中期的某个时候,问题自行解决了。
归档时间: |
|
查看次数: |
16346 次 |
最近记录: |