程序应使用完整的处理器,但CPU的充分利用并不好

时间:2015-12-23 12:03:07

标签: performance language-agnostic coding-style cpu-usage

我参加了一个程序员'今天见面:

一个人说:

  

一个好的程序使用最大处理器

根据一般计算:

  

当任务管理器显示 100%利用率时。这意味着你的PC需要一些药物。

使用最大处理器时的程序会将任务管理器推送到100%。

这两件事听起来很矛盾。有人可以说明理由吗?

1 个答案:

答案 0 :(得分:4)

这表明思想流程在程序员社区中是多么愚蠢。

所有的CPU利用率都非常粗略地说明了程序花费计算与等待的时间,可能是I / O,可能是不相关的处理。此外,如果你有一台4核机器,25%可能意味着100%的核心。

某些程序受I / O约束,因为它们的主要工作是读/写文件或其他I / O.他们的CPU利用率应该很低。 其他人应该受CPU限制。 但这并不能告诉你两者是否“有效”。

当程序无效不必要时,程序是有效的。 只需将程序设置为两次,就可以轻松地使程序看起来受CPU限制或I / O限制! 如果你看到高CPU百分比或高I / O利用率,当你担心计算机应该闲置时,这意味着某些东西正在运行,你应该怀疑它不是你想要的东西。

我只知道一种使程序高效的方法,那就是诊断他们正在做什么,并消除任何需要时间并且可以删除的内容。 Example.