我写了一个简单的python程序,在我看来它应该是cpu密集型的:
for a in range(0,1500):
for b in range (0,a):
for c in range(0,b):
x = a+b+c
print x
发生的事情是需要很长时间才能解决问题,但CPU消耗仍然保持在25%左右。为什么在更短的时间内使用更多的cpu会发生这种情况呢?
答案 0 :(得分:8)
你可能在四核CPU上运行它。由于此代码仅在一个核心上运行,因此当单核实际上处于100%时,它将显示占总数的25%。
在某些操作系统上,CPU使用率将显示为每个核心100%(因此总数可以超过100%)。在这些操作系统上,您的代码应显示100%的CPU使用率。