CPU的使用率是什么意思?如何降低?

Jay*_*Jay 5 performance process

CPU进程的含义是什么意思?

如何衡量呢?

有什么方法可以减少它?

我一直对这个概念感到困惑.我试图在Linux中使用'top'命令来测量使用的CPU.但是,我注意到的是,当没有其他用户进程在运行时,我的进程似乎会在I/O中没有阻塞时占用99%的CPU.但是,如果还有其他进程在运行,则会达到45%或50%.当没有其他进程在运行时,进程占用99%的CPU是否可以接受?

方向上的任何链接或指针也会有所帮助.

mar*_*guy 3

此上下文中的 CPU 利用率是每个进程消耗的可用处理器周期总数的比例。

如果它只是进行一些冗长的计算,那么您所看到的是正常的:操作系统在请求它的进程之间公平地分配可用的 100% 计算资源。

相反,如果您的程序应该等待某些事件,例如等待用户按下按键或等待来自网络的输入,那么听起来您的程序处于无限循环中:它从不等待任何东西,而只是搅动一直离开。如果是这种情况,您应该考虑重写它,以便当它没有工作要做时,它会等待某些事情。这可能正在等待用户按下按键、数据包到达网络连接或其他什么。如果是这种情况,您应该寻找这样的代码:“有什么工作要做吗?没有!有什么工作要做吗?没有!有什么工作要做吗?没有!” 疯狂地。如果是这种情况,您应该找到一种方法,使用适当的操作系统调用或库函数让它等待工作。