linux效能優化cpu 02平均負載

2022-09-11 15:36:21 字數 1711 閱讀 6227

每次我們系統變慢時,我們通常做的第一件事就是top命令或者uptime命令,看一下系統的負載情況,比如下面:

我在命令列中輸入uptime

22:15:51    表示當前系統時間

up 13 min  系統執行總時間

2 users      當前正在登陸 使用者數

load **erage :0.12,0.06,0.05  表示系統1分鐘,5分鐘,15分鐘系統的平均負載情況

平均負載是什麼?

平均負載:指單位時間內,系統處於可執行狀態不可中斷狀態的平均程序數,可以理解為平均活躍程序數。它和cpu 的使用率並沒有直接的關係

可執行狀態是指正在使用cpu或者等待cpu的程序,也就是ps命令檢視程序狀態為r(running或runnable)的程序

不可中斷狀態指正處於核心態關鍵流程中的程序,並且這些流程是不可打斷的, 如最常見的是等待硬體裝置的 i/o 響應

也就是ps命令檢視程序狀態為d(uninterruptible sleep,也稱為 disk)的程序

比如,當乙個程序向磁碟讀寫資料時,為了保證資料的一致性,在得到磁碟回覆前,它是不能被其他程序或者中斷打斷的,

這個時候的程序就處於不可中斷狀態。如果此時的程序被打斷了,就容易出現磁碟資料與程序資料不一致的問題。

平均負載多少時合理?

執行以下命令檢視cpu 的邏輯個數

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

如:               

平均負載是平均程序數,由此可見,平均負載等於cpu 的個數時為最理想狀態,說明cpu充分被利用了,

當平均負載大於cpu個數時說明系統已經出現了過載。

我們要通過平均負載的三個數值來觀察系統負載情況趨勢,這裡我再舉個例子,假設我們在乙個單 cpu 系統上看到平均負載為

1.73,0.60,7.98,那麼說明在過去 1 分鐘內,系統有 73% 的超載,而在 15 分鐘內,有 698% 的超載,從整體趨勢來看,系統

的負載在降低。

個人認為平均負載超過cpu數量70%時,就應該分析排查負載過高的問題,一旦負載過高,就可能導致系統響應變慢,影響服務正常

執行。平均負載和cpu使用率的關係

平均負載案例分析

首先安裝 stress 和 sysstat 兩個工具包

stress 是linux 系統壓力測試工具,這裡我們用作異常程序模擬平均負載公升高的場景。

sysstat  包含了常用的linux效能工具,用來監控和分析系統的效能,如mpstat何pidstat

mpstat 是乙個常用的多核cpu效能分析工具,用來實時檢視每個cpu的效能指標,已經所有cpu 的平均指標

pidstat 是乙個常用的程序效能分析工具,用來實時檢視程序的cpu、記憶體、io以及上下文切換等效能指標

Linux效能優化 CPU優化(二)

cpu 使用率,就是除了空閒時間外的其他時間佔總 cpu 時間的百分比,用公式來表示就是 為了計算 cpu 使用率,效能工具一般都會取間隔一段時間 比如 3 秒 的兩次值,作差後,再計算出這段時間內的平均 cpu 使用率,即 工具 工具 perflinux 2.6.31 以後內建的效能分析工具。它以...

unity效能優化 CPU

影響效能的因素 對於乙個遊戲來說,有兩種主要的計算資源 cpu和gpu,它們會互相合作,來讓我們的遊戲可以在預期的幀率和解析度下工作。cpu負責其中的幀率,gpu主要負責解析度相關的一些東西。本篇會介紹cpu的優化技巧 作用 計算。主要是在蒙皮骨骼計算,布料模擬,頂點動畫,粒子模擬等,還有在各種頂點...

cpu效能優化手段

1 cpu優化 快取 為了提高程式的執行的效能,現代cpu在很多方面對程式進行優化 例如 cpu的快取記憶體,盡可能的避免處理器訪問主記憶體的時間開銷,處理器大多會利用快取來提高效能 cpu快取分為 快取 l1 一級快取是cpu第一層快取記憶體 分為資料快取和指令快取 一般伺服器的cpu在32 4....