linux / proc / loadavg

时间:2012-08-16 12:48:50

标签: linux

从linux发出此命令时:

# cat /proc/loadavg
0.75 0.35 0.25 1/25 1747

最后2个数字是多少?

最后一个每秒增加2,我应该担心吗?

4 个答案:

答案 0 :(得分:69)

最后一个是系统最近15分钟的工作量。

/proc/loadavg

  

此文件中的前三个字段是加载平均数字   运行队列(状态R)或等待磁盘的作业数   I / O(状态D)平均超过1,5和15分钟。他们是   与正常运行时间(1)和其他时间给出的负载平均数相同   程式。

     

第四个字段由两个用a分隔的数字组成   斜杠(/)。第一个是当前正在执行的数量   内核调度实体(进程,线程);这会少一些   大于或等于CPU的数量。斜杠后面的值是   当前存在的内核调度实体的数量   系统。

     

第五个字段是最多的过程的PID   最近在系统上创建。

答案 1 :(得分:14)

  

前三列测量最后一个,五个和15分钟周期的CPU和I / O利用率。第四列显示当前正在运行的进程数和进程总数。最后一列显示最后使用的进程ID。

https://www.centos.org/docs/5/html/5.2/Deployment_Guide/s2-proc-loadavg.html

(我搜索了答案,所以你也可以这样做。)

答案 2 :(得分:12)

我想评论接受的答案。

  

第四个字段由两个用斜杠(/)分隔的数字组成。该   第一个是当前正在执行的内核调度的数量   实体(进程,线程);这将小于或等于   CPU数量。

我做了一个测试程序,它从输入中读取整数N,然后创建N个线程并永远运行它们。在RHEL 6.5计算机上,我有8个处理器,每个处理器都有超线程。无论如何,如果我运行我的测试并且它创建了128个线程,我在第四个字段值中看到大于128,例如135.它显然大于CPU的数量。这篇文章支持我的观察:http://juliano.info/en/Blog:Memory_Leak/Understanding_the_Linux_load_average

  

值得注意的是proc(5)手册页中的当前解释   (截至2009年3月的手册版本3.21)是错误的。它报告了   第四个字段的第一个数字作为当前正在执行的数字   调度实体,所以预测它不能大于   CPU数量。这与真实的实现不匹配   value报告当前可运行线程的数量。

答案 3 :(得分:2)

以下页面详细解释了这些:

http://www.brendangregg.com/blog/2017-08-08/linux-load-averages.html

我将从上一页获得的这些数字解释如下:

  • 如果平均值为0.0,则您的系统处于空闲状态。
  • 如果1分钟的平均值高于5或15分钟的平均值,则负载为 不断增加。
  • 如果1分钟平均值低于5分钟或15分钟 平均,然后负载减少。如果它们高于您的CPU 数,那么您可能会遇到性能问题(取决于情况)。