对于只有一个微处理器单元的负载平均输出top
可以理解为如果它高于1.0则有作业在等待。但是,如果我们在具有逻辑核心的多核系统上有 n 个核心l*n
(在我的 Intel CPU 上,n=6 且l*n
= 12,因此输出为nproc
12),我们是否应该将负载平均值除以输出,nproc
看看该数字是否为上面 1 来了解是否有(平均)作业等待,或者最好使用它htop
来了解并行多核系统是否获得过多的平均负载?
我认为我的方法是错误的,但当我看到平均负载高于 10 top 时,结论是正确的,我检查了哪个进程的成本很高,并发现正在运行的程序溢出,但如果该机器实际上有> 10 的ps
输出nproc
如果我知道的话,就不会真正成为调查的理由。你同意?
答案1
您的假设是正确的,您将平均负载划分到各个核心上。为了更好地理解平均负载,我强烈推荐 Brendan Gregg 的这篇文章http://www.brendangregg.com/blog/2017-08-08/linux-load-averages.html