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

cup利用率为什么上不去
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
2条回答 默认 最新
- threenewbee 2018-08-18 09:47关注
因为你的程序没有使用多线程,也就是它是顺序执行的,操作系统不能自动把串行的代码转变成并行的代码分配给cpu,做不到。
这个需要你作为程序员去实现。
而且并非所有的算法都能并行计算,比如说从数学的角度看,人类还没有找到一个10进制算圆周率的并行算法。或者简单来说,如果你不算出圆周率开头的位,你不能先算后面的位。
不过16进制的圆周率并行算法是已经找到了的。本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报