进程的 pidstat %CPU 与 htop %CPU

进程的 pidstat %CPU 与 htop %CPU

我正在使用 pidstat 来监控进程的 cpu 使用率,它显示 100%。对于同一进程,htop 或 top 显示同一进程的 200%。该系统有 16 个核心,而我正在监视的进程设置为仅使用两个核心。因此 htop 或 top 报告的 %CPU 是正确的。

我还更改了进程仅使用一个核心,在这种情况下,pidstat 显示 100% cpu,htop 显示 100%

pidstat 测量 %CPU 的方式不同吗?

答案1

htop 显示基于(正在使用的核心 #1 的%)+(正在使用的核心 #2 的%)+ .... 的输出数量。

pidstat 并不是根据每个核心的核心使用量相加,而是根据应用程序使用的核心使用量与它正在使用的核心的平均值来计算。因此 pidstat 永远不会显示大于 100% 的值。

相关内容