有没有办法知道 CPU 进程是否正在发生抖动?

有没有办法知道 CPU 进程是否正在发生抖动?

我看到下面这一行:

 PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND     
 20   0   52.2g  39.9g    388 S  1554 63.5   1663:21 MATLAB   

最重要的是,对于 CPU 进程,我在具有 64GB 内存的计算机上运行。

这个过程很慢,但也非常密集。我现在想知道的是 - 它是否因为将内存交换到磁盘而发生抖动,或者我是否可以相信它仍在半满执行?我不知道如何检查 - 机器不在我旁边,所以我无法听到硬盘活动的加剧......

答案1

为了确定,您需要打开顶部 ( f) 中的 vMajor 列 (vMj) 并查看数字是否很高。

但是,如果您有 64G 内存,并且只使用了 52G 虚拟内存,并且只有 40G 是常驻内存(内存使用率为 63%),那么几乎肯定不会出现抖动。如果出现抖动,我预计 %MEM 会高得多,并且 VIRT 应该比您的物理内存大得多。

此外,真正不稳定的进程的 %CPU 应低于 10%(这是 15x 100%)。因此,尽管可能存在磁盘压力,但此进程(线程组)仍成功保持 15 个核心处于繁忙状态。

相关内容