如果 runq 中有零個進程,為什麼負載會是 5?

如果 runq 中有零個進程,為什麼負載會是 5?

這對我來說沒有意義,如果 runq 中有零個進程,為什麼負載會是 5?

12:00:01 AM   runq-sz  plist-sz   ldavg-1   ldavg-5  ldavg-15
12:05:01 AM         0       708      5.23      5.14      5.10
12:15:01 AM         0       708      5.16      5.12      5.09
12:25:01 AM         0       708      5.07      5.07      5.08
12:35:01 AM         0       708      5.12      5.08      5.07
12:45:01 AM         2       708      5.18      5.15      5.09
12:55:01 AM         1       708      5.05      5.12      5.09
01:05:01 AM         0       708      5.06      5.08      5.08
01:15:01 AM         0       708      5.14      5.11      5.09

我知道 iowait 通常是導致報告負載增加的罪魁禍首,但磁碟活動很少,

12:00:01 AM       DEV       tps  rd_sec/s  wr_sec/s  avgrq-sz  avgqu-sz     await     svctm     %util
12:05:01 AM    dev8-0      1.53      0.00     30.61     20.01      0.00      0.34      0.21      0.03
12:15:01 AM    dev8-0      1.32      0.00     25.77     19.51      0.00      0.34      0.10      0.01
12:25:01 AM    dev8-0      1.60      0.00     40.81     25.43      0.00      0.64      0.29      0.05
12:35:01 AM    dev8-0      1.64      0.00     35.76     21.80      0.00      0.73      0.22      0.04
12:45:01 AM    dev8-0      1.33      0.00     25.95     19.51      0.00      0.23      0.12      0.02

該盒子本身正在運行一個 django 實例,每秒處理約 5 次點擊。

答案1

什麼是 ps -Leo state,pid,args | grep '^[RD]' 告訴你了嗎?不可中斷的程序計入其中。

啊哈!這就是答案,我已經忘記了。

D    59 [kacpi_notify]
D 24806 [power_saving/0]
D 24807 [power_saving/1]
D 24808 [power_saving/2]
D 24809 [power_saving/3]

這是五個進程,我的負載是五個。

來自“正常運行時間”:

系統平均負載是指處於可運作狀態的進程的平均數量或不間斷狀態。

我應該記得的。謝謝史蒂芬·查澤拉斯!

相關內容