處理器(
cpu)也可能是系統的瓶頸,如下是針對處理器進行分析的步驟:
檢視
system\%total processor time
效能計數器的計數值
該計數值用於體現伺服器整體的處理器使用率,對多處理器系統來說,該值體現了所有
cpu的平均使用率。該值的數值持續超過
90%,則說明整個系統面臨著處理器方面的瓶頸,需要通過增加處理器來提高效能。
ps:由於作業系統本身的特性,在某些多
cpu系統中,該資料本身並不大,但若
cpu之間的負載情況極為不均衡,也應該視作系統產生了處理器方面的瓶頸。
檢視每個
cpu的
processor\%processortime
和processor\%usertimes
和processor\%privilegedtime
processor\%user time是指系統的非核心作業系統消耗的
cpu時間,如果該值較大,可以考慮是否通過演算法優化等方法來降低該值。如果該伺服器是資料庫伺服器,processor\%user time值大的原因很可能是資料庫的排序或函式操作消耗了過多的
cpu時間,此時可以考慮對資料庫系統進行優化。
研究系統處理器瓶頸
檢視system\processor queue length計數器的值,當該計數器的值大於cpu
數量的總數加
1時,說明處理器阻塞。處理器的%process time值很高時,一般都伴隨著處理器阻塞,但產生處理器阻塞時,processor\%process time計數器的值並不一定很大,此時就需要檢視處理器阻塞的原因。
%dpc time
該值越低越好,在多處理器系統中,如果該值大於50%
並且processor\%process time
值非常高,則考慮加入乙個網絡卡來提高效能
處理器(
cpu)也可能是系統的瓶頸,如下是針對處理器進行分析的步驟: 檢視
processor\%idle time
效能計數器的值
該計數器描述的是
cpu總的空閒時間。如果該值持續低於
10%,表明瓶頸是
cpu。可以考增加乙個處理器或換乙個更快的處理器。
ps:
該計數器的值可以通過
top命令輸出結果。 檢視
processor\%user time
和system\%user time
、system\cpu context switches
processor\%user time
是指系統非核心操作消耗的
cpu時間。一般來說如果系統中使用了大量的演算法和複雜的計算操作,該值會比較大。
system\%user time
系統上所有處理器執行非核心操作的平均時間的百分比,該值反映了用於有用作業上的時間的比率
system\cpu context switches
是cpu
上下文切換。在
vmstat
的結果中顯示為cs。
例如:cpu
10065
70user time,%-
%05idle time
;大量的上下文切換是可以接受的。
ps:
檢視processor
資訊用top
命令,system
用vmstat應用
可執行佇列
每個可執行佇列不應該超過
1-3個執行緒(每處理器)。
ps:vmstat
中一些引數介紹: r
cpu
,被io
,被處理過的中斷數
cs,使用者占用
的百分比
syscpu
,所有可執行的執行緒被
iocpu
,完全空閒的百分比
ps:mpstat
輸出多個處理器資料: 對
cpu使用率過高的程序中的所有執行緒進行排序的命令:
ps h -e -o pid,tid,pcpu,cmd --sort=pcpu |grep ***
產生死迴圈
首先查一下出問題程序的
pid:ps -ef | grep icdn 然後
top命令檢視執行緒資訊:
top -h -p pid號
接下來,我們用
gdb來
attach
目標程序:gdb icdn pid
號(與2
一樣)gdb已經列出了各執行緒正在執行的函式,記住行首標號
執行thread
行首標號:
thread
執行緒id
然後執行:bt
最後:detach()
除錯完指定程序後,可以執行
detach
命令來讓
gdb釋放該程序,該程序得以繼續執行。當回車時,
detach
不會重複。當執行完
detach
後,程序和
gdb不再相關,
gdb可以
attach
其他程序。
執行緒太多
機器配置差
微處理器效能簡介(8086)
微處理器職能 執行各種運算和資訊處理,控制各個計算機部件自動協調地完成系統規定的各種操作 典型微處理器的主要效能指標 主頻 微處理器的時鐘頻率 外頻 系統匯流排的工作頻率 倍頻 微處理器主頻與外頻相差的倍數,主頻 外屏 倍頻 微處理器具有以下基本功能 1 指令控制 使計算機中的指令或程式嚴格按照規定...
arm處理器啟動流程分析
2440 啟動方式 nor nand 啟動流程 開發板在上電後,會從0x0位址處執行。如果從nor flash啟動,則 要放在nor 的0位址處 如果從nand flash啟動,nand flash是不能直接訪問的,必須通過相應的暫存器才能訪問到,所以nand flash 不能參與arm處理器的統一...
物理處理器與邏輯處理器
記錄解決方案,自己實際處理過,方案可用,在自己的部落格中記錄一下。cpu central processing unit 是 處理單元,本文介紹物理cpu,物理cpu核心,邏輯cpu,以及他們三者之間的關係。乙個物理cpu可以有1個或者多個物理核心,乙個物理核心可以作為1個或者2個邏輯cpu。物理c...