1. 程式人生 > >cpu中的load average

cpu中的load average

在進行效能測試的時候,如果有業務指標不達標的時候我們會對效能指標進行分析,效能指標有很多,其中cpu就是一個很重要的效能指標,我們通過top命令可以看到在裡面有很多的資料顯示,那哪些資料可以在一定程度上反應cpu的效能呢,這裡我們來看下load average

通過top(uptime、w也可以看)命令:

顯示出來的指標有很多,主要關注的指標有load average,

linux系統中的Load Average CPULoad,它所包含的資訊不是CPU的使用率狀況,而是在一段時間內CPU正在處理以及等待CPU處理的程序數之和的統計資訊,也就是CPU使用佇列的長度的統計資訊。

Load Average 就是一段時間 (1 分鐘、5分鐘、15分鐘) 內平均 Load 。

上邊11.42,12.85,13.12表示

第一位11.42:表示最近1分鐘平均負載
第二位12.85:表示最近5分鐘平均負載
第三位13.12:表示最近15分鐘平均負載

linux系統是5秒鐘進行一次Load取樣;

Load Average是與機器核心數有關的,在linux機器中按照配置的不同,有的機器是單核cpu,有的是多核cpu,不同的核數反應的系統負載是不一樣的,

1.如何分析load average

1) 單核處理器

假設我們的系統是單CPU單核心的,把它比喻成是一條單向馬路,把CPU任務比作汽車。當車不多的時候,load <1;當車佔滿整個馬路的時候 load=1;當馬路都站滿了,而且馬路外還堆滿了汽車的時候,load>1

2) 多核處理器

我們經常會發現伺服器Load > 1但是執行仍然不錯,那是因為伺服器是多核處理器(Multi-core)。
假設我們伺服器CPU是2核,那麼將意味我們擁有2條馬路,我們的Load = 2時,所有馬路都跑滿車輛。

我們可以通過下面集中方式來看系統是幾核的:

1.grep 'model name' /proc/cpuinfo | wc -l

2.輸入top命令之後按1也能夠顯示出是幾核的;

  • 0.7 < load < 1: 此時是不錯的狀態,如果進來更多的汽車,你的馬路仍然可以應付。
  • load = 1: 你的馬路即將擁堵,而且沒有更多的資源額外的任務,趕緊看看發生了什麼吧。
  • load > 5: 非常嚴重擁堵,我們的馬路非常繁忙,每輛車都無法很快的執行

2. 三種Load值,應該看哪個

通常我們先看15分鐘load,如果load很高,再看1分鐘和5分鐘負載,檢視是否有下降趨勢。
1分鐘負載值 > 1,那麼我們不用擔心,但是如果15分鐘負載都超過1,我們要趕緊看看發生了什麼事情。所以我們要根據實際情況檢視這三個值。