Cpu-Usage

系統負載是否與 CPU 使用率直接相關?

  • July 4, 2015

這是一台雙核機器,負載在 24 左右,但 CPU 使用率從 60% 到 80% 上下波動,從未達到 100%,那麼怎麼會有那麼多程序在等待呢?I/O 幾乎為零,因為所有內容都是從記憶體數據庫中讀取的,而網路僅使用來自千兆位連接的 7mbit 左右。添加額外的核心會減少負載還是 CPU 不是問題,因為它甚至沒有達到頂峰?

不。

嘗試只執行 Seti @ Home(或任何它目前的化身),你會看到你的伺服器負載固定在 1.0,儘管你的 CPU 將固定在 100% 的使用率。

從 UPTIME(1) 手冊頁:

系統負載平均值是處於可執行或不可中斷狀態的平均程序數。處於可執行狀態的程序要麼正在使用 CPU,要麼正在等待使用 CPU。處於不可中斷狀態的程序正在等待一些 I/O 訪問,例如等待磁碟。取三個時間間隔的平均值。負載平均值未針對系統中的 CPU 數量進行標準化,因此負載平均值為 1 意味著單個 CPU 系統一直在載入,而在 4 CPU 系統上則意味著它有 75% 的時間處於空閒狀態。

例如,我們有一個伺服器,它只執行帶有兩個 Xeon CPU(總共 4 個虛擬 CPU)的 Spamassassin,它有時會達到 100% 的 CPU 使用率,但更多時候它通過讀取和寫入貝氏數據庫。因此,系統負載通常非常高,大約為 20-40,因為有許多程序正在等待磁碟一段時間。

引用自:https://serverfault.com/questions/87550