为了账号安全,请及时绑定邮箱和手机立即绑定

cup利用率为什么上不去

cup利用率为什么上不去

拉莫斯之舞 2018-11-26 17:17:30
linux中为什么cpu的利用率上不去呢。,cpu有8个核心,比如我启动了一个进程P。通过top命令查看,当前cpu的平均利用率不到10%,但p进程的cpu利用率高达95%,我的理解是p进程只占用了其中一个核心,明显的p进程需要更多的cpu资源,那么为什么操作系统不分配给它更多的cpu资源呢
查看完整描述

2 回答

?
holdtom

TA贡献1805条经验 获得超10个赞

因为你的程序没有使用多线程,也就是它是顺序执行的,操作系统不能自动把串行的代码转变成并行的代码分配给cpu,做不到。
这个需要你作为程序员去实现。
而且并非所有的算法都能并行计算,比如说从数学的角度看,人类还没有找到一个10进制算圆周率的并行算法。或者简单来说,如果你不算出圆周率开头的位,你不能先算后面的位。
不过16进制的圆周率并行算法是已经找到了的。


查看完整回答
反对 回复 2018-11-30
?
繁华开满天机

TA贡献1816条经验 获得超4个赞

需要把工作并行起来,才能利用多个核心一起工作。

查看完整回答
反对 回复 2018-11-30
  • 2 回答
  • 0 关注
  • 1260 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信