亚洲视频二区_亚洲欧洲日本天天堂在线观看_日韩一区二区在线观看_中文字幕不卡一区

公告:魔扣目錄網(wǎng)為廣大站長提供免費收錄網(wǎng)站服務(wù),提交前請做好本站友鏈:【 網(wǎng)站目錄:http://www.430618.com 】, 免友鏈快審服務(wù)(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

概述

今天主要帶大家深入理解下CPU負(fù)載和cpu使用率方面的內(nèi)容,看下這中間是怎么計算的。


CPU負(fù)載和 CPU使用率

這兩個從一定程度上都可以反映一臺機器的繁忙程度.

cpu使用率反映的是當(dāng)前cpu的繁忙程度,忽高忽低的原因在于占用cpu處理時間的進(jìn)程可能處于io等待狀態(tài)但卻還未釋放進(jìn)入wait。

平均負(fù)載(load average)是指某段時間內(nèi)占用cpu時間的進(jìn)程和等待cpu時間的進(jìn)程數(shù),這里等待cpu時間的進(jìn)程是指等待被喚醒的進(jìn)程,不包括處于wait狀態(tài)進(jìn)程。

以上分析可以看出,一臺機器很有可能處于低cpu使用率高負(fù)載的情況,因此看機器的繁忙程度應(yīng)該結(jié)合兩者,在cpu還空閑的情況下,如何提高io響應(yīng)是減少負(fù)載的關(guān)鍵,很多人認(rèn)為負(fù)載到幾十了機器就非常繁忙了,其實如果這個時候cpu使用率比較低,則負(fù)載高可能不能很好說明問題,一旦cpu處理的進(jìn)程處理完后,那些等待的進(jìn)程也能立刻得到響應(yīng),這種情況下應(yīng)該優(yōu)化io讀寫速度。真到cpu使用率一直90%以上,即使平均負(fù)載只有個位數(shù)(比如某一個進(jìn)程一直在運算),那機器其實也已經(jīng)繁忙了~


CPU負(fù)載的一個類比

判斷系統(tǒng)負(fù)荷是否過重,必須理解load average的真正含義。

深入探究Linux系統(tǒng)CPU負(fù)載和CPU使用率

 

首先,假設(shè)最簡單的情況,你的電腦只有一個CPU,所有的運算都必須由這個CPU來完成。

那么不妨把這個CPU想象成一座大橋,橋上只有一根車道,所有車輛都必須從這根車道上通過。(很顯然,這座橋只能單向通行。)

系統(tǒng)負(fù)荷為0,意味著大橋上一輛車也沒有。

系統(tǒng)負(fù)荷為0.5,意味著大橋一半的路段有車。

系統(tǒng)負(fù)荷為1.0,意味著大橋的所有路段都有車,也就是說大橋已經(jīng)"滿"了。但是必須注意的是,直到此時大橋還是能順暢通行的。

系統(tǒng)負(fù)荷為1.7,意味著車輛太多了,大橋已經(jīng)被占滿了(100%),后面等著上橋的車輛為橋面車輛的70%。以此類推,系統(tǒng)負(fù)荷2.0,意味著等待上橋的車輛與橋面的車輛一樣多;系統(tǒng)負(fù)荷3.0,意味著等待上橋的車輛是橋面車輛的2倍。總之,當(dāng)系統(tǒng)負(fù)荷大于1,后面的車輛就必須等待了;系統(tǒng)負(fù)荷越大,過橋就必須等得越久。

CPU的系統(tǒng)負(fù)荷,基本上等同于上面的類比。大橋的通行能力,就是CPU的最大工作量;橋梁上的車輛,就是一個個等待CPU處理的進(jìn)程(process)。

如果CPU每分鐘最多處理100個進(jìn)程,那么系統(tǒng)負(fù)荷0.2,意味著CPU在這1分鐘里只處理20個進(jìn)程;系統(tǒng)負(fù)荷1.0,意味著CPU在這1分鐘里正好處理100個進(jìn)程;系統(tǒng)負(fù)荷1.7,意味著除了CPU正在處理的100個進(jìn)程以外,還有70個進(jìn)程正排隊等著CPU處理。

為了電腦順暢運行,系統(tǒng)負(fù)荷最好不要超過1.0,這樣就沒有進(jìn)程需要等待了,所有進(jìn)程都能第一時間得到處理。很顯然,1.0是一個關(guān)鍵值,超過這個值,系統(tǒng)就不在最佳狀態(tài)了,你要動手干預(yù)了。


CPU負(fù)載-多處理器

上面假設(shè)電腦只有1個CPU。如果電腦裝了2個CPU,會發(fā)生什么情況呢?

2個CPU,意味著電腦的處理能力翻了一倍,能夠同時處理的進(jìn)程數(shù)量也翻了一倍。

還是用大橋來類比,兩個CPU就意味著大橋有兩根車道了,通車能力翻倍了。

所以,2個CPU表明系統(tǒng)負(fù)荷可以達(dá)到2.0,此時每個CPU都達(dá)到100%的工作量。推廣開來,n個CPU的電腦,可接受的系統(tǒng)負(fù)荷最大為n.0。


CPU負(fù)載-多核處理器

芯片廠商往往在一個CPU內(nèi)部,包含多個CPU核心,這被稱為多核CPU。

在系統(tǒng)負(fù)荷方面,多核CPU與多CPU效果類似,所以考慮系統(tǒng)負(fù)荷的時候,必須考慮這臺電腦有幾個CPU、每個CPU有幾個核心。然后,把系統(tǒng)負(fù)荷除以總的核心數(shù),只要每個核心的負(fù)荷不超過1.0,就表明電腦正常運行。

怎么知道電腦有多少個CPU核心呢?

  • "cat /proc/cpuinfo"命令,可以查看CPU信息。
  • "grep -c 'model name' /proc/cpuinfo"命令,直接返回CPU的總核心數(shù)。
深入探究Linux系統(tǒng)CPU負(fù)載和CPU使用率

 


系統(tǒng)負(fù)荷的經(jīng)驗法則

系統(tǒng)負(fù)荷的經(jīng)驗法則是:

當(dāng)系統(tǒng)負(fù)荷持續(xù)大于0.7,你必須開始調(diào)查了,問題出在哪里,防止情況惡化。

當(dāng)系統(tǒng)負(fù)荷持續(xù)大于1.0,你必須動手尋找解決辦法,把這個值降下來。

當(dāng)系統(tǒng)負(fù)荷達(dá)到5.0,就表明系統(tǒng)有很嚴(yán)重的問題,長時間沒有響應(yīng),或者接近死機了,正常不應(yīng)該讓系統(tǒng)達(dá)到這個值。

對于我的機器,有8個core,那么,load多少合適呢?

#grep 'model name' /proc/cpuinfo | wc -l
#echo "0.7*24" |bc
深入探究Linux系統(tǒng)CPU負(fù)載和CPU使用率

 


最佳觀察時長

我們一般在用top觀察cpu負(fù)載時,其中的"load average"一共返回三個平均值----1分鐘系統(tǒng)負(fù)荷、5分鐘系統(tǒng)負(fù)荷,15分鐘系統(tǒng)負(fù)荷,那么應(yīng)該參考哪個值呢?

深入探究Linux系統(tǒng)CPU負(fù)載和CPU使用率

 

如果只有1分鐘的系統(tǒng)負(fù)荷大于1.0,其他兩個時間段都小于1.0,這表明只是暫時現(xiàn)象,問題不大。

如果15分鐘內(nèi),平均系統(tǒng)負(fù)荷大于1.0(調(diào)整CPU核心數(shù)之后),表明問題持續(xù)存在,不是暫時現(xiàn)象。所以,你應(yīng)該主要觀察"15分鐘系統(tǒng)負(fù)荷",將它作為電腦正常運行的指標(biāo)。

分享到:
標(biāo)簽:負(fù)載 Linux CPU
用戶無頭像

網(wǎng)友整理

注冊時間:

網(wǎng)站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網(wǎng)站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網(wǎng)站吧!
最新入駐小程序

數(shù)獨大挑戰(zhàn)2018-06-03

數(shù)獨一種數(shù)學(xué)游戲,玩家需要根據(jù)9

答題星2018-06-03

您可以通過答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學(xué)四六

運動步數(shù)有氧達(dá)人2018-06-03

記錄運動步數(shù),積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓(xùn)練成績評定2018-06-03

通用課目體育訓(xùn)練成績評定