根据“sar”计算 CPU 使用率

根据“sar”计算 CPU 使用率

我开始使用 Linux 操作系统已经有一段时间了,所以我是个初学者。我想以给定的时间间隔将给定进程的总 CPU 收集到一个文件中。因此,我使用了sar实用程序。

cpx@cpx-VirtualBox:~$ sar -u 1 4

Linux 4.4.0-142-generic (cpx-VirtualBox)        07/15/2019      _x86_64_        (1 CPU)

10:28:25 PM     CPU     %user       %nice        %system    %iowait      %steal     %idle
10:28:26 PM     all      7.22        0.00        2.06        0.00        0.00       90.72
10:28:27 PM     all     10.10        0.00        3.03        0.00        0.00       86.87
10:28:28 PM     all      7.14        0.00        2.04        0.00        0.00       90.82
10:28:29 PM     all      7.00        0.00        2.00        0.00        0.00       91.00

在 Windows 中,任务管理器在图表中显示总体 CPU 使用率以及用户和内核使用率。因此,我不知道其他参数,而在 Linux 中,似乎没有简单的方法可以查看总 CPU 数。

那么,这里的总 CPU 是多少?我应该只做:100 - idle% value获取总 CPU 使用率吗?或者,它只是 %user + %system 即用户时间 + 内核时间?

答案1

您需要 %user + %nice + %system 来获得总 CPU 数。

如果 %user 接近 100%,则可能是因为您运行了“sar”;保持相对较长的间隔。

  • %iowait 是处理器等待的时间但它仅适用于单个 CPU对于多核来说毫无用处。
  • %steal 是虚拟 CPU 等待真实 CPU 的时间百分比

相关内容