linux 解析pdf下载工具,Linux高级系统级性能分析工具-perf.pdf
Linux高級系統級性能分析工具-perf
Linux 的系統級性能剖析工具‐perf
(二)
承剛
TAOBAO? Kernel?Team
chenggang.qin@
第三章? Perf?top 工具
3.1? perf?top 的基本使用方法
top 工具主要用于實時剖析各個函數在某個性能事件上的熱度。利用perf
top ,能夠直觀地觀察到當前的熱點函數,并利用工具中內置的annotate 功能,
進一步查找熱點指令。
圖3.?perf?top 的界面
Perf?top 的基本使用方法為:
$perf?top
該命令以默認性能事件“cycles (CPU 周期數)”進行全系統的性能剖析,檢
測系統中的所有應用程序函數與內核函數的熱度。圖3 為上述命令的執行結果。
perf 提供了3 種用戶界面,分別是tui ,gtk 以及tty 。其中可操作性最強,
功能最豐富的界面是tui ,本文主要基于此界面講解perf。top 工具僅支持tui 與
tty ,默認界面為tui 。圖3 中展示的就是tui 界面。
top 工具的界面具有4 列信息。右面第一列為符號名,也就是函數名。左面
第一列為該符號引發的性能事件在整個監測域中占的比例,我們將其稱為該符號
的熱度。監測域是指perf 監控的所有符號。默認情況下包括系統中所有進程、
內核以及內核模塊的函數。左面第二列為該符號所在的DSO。DSO 即動態共享對
象(Dynamic?Shared?Object)的縮寫。第3 列為DSO 的類型。perf 中DSO 共有5
種類型,分別是:ELF 可執行文件,動態鏈接庫,內核,內核模塊,VDSO 等。
當第3 列為? [.]時表示此符號屬于用戶態的ELF 文件(包括可執行文件與動態鏈
接庫)。為[k]表示此符號屬于內核或內核模塊。
需要提一下的是,必須在系統安裝newt 軟件包,perf 才能使能tui 界面。
在tui 界面下按'h' ,'?'或'F1'鍵時,會彈出一個幫助窗口,如圖4 所示。
圖4.?tui 界面的幫助窗口
幫助窗口列出了perf?top 的所有功能。我們首先來看注解(Annotate)功能。
注解功能可以進一步深入分析某個符號。給出對應線程的代碼并且為熱點代碼標
記出它們觸發的性能事件在整個測試域中的百分比。下面讓我們來看一下如何使
用注解功能。在界面上按上下鍵,將光標在各個symbol 間移動。選定某個符號
后,按下a 鍵,得到如圖5 所示的界面。
圖5.?perf?top 的注解功能
圖5 顯示的是[code1] 中do_pi() 函數的注解。從圖上可以看到perf 對do_pi()
中的C 代碼給出了匯編語言的注解。并且給出了各條指令的采樣率。從圖上可以
看到耗時較多的指令(如訪存指令)比較容易被perf 采到。
選定某個符號后按下熱鍵’d’ ,perf 會過濾掉所有不屬于此DSO 的文件。以圖
1 中的實驗為例,符號do_pi 歸屬的DSO 為t
總結
以上是生活随笔為你收集整理的linux 解析pdf下载工具,Linux高级系统级性能分析工具-perf.pdf的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 怎么自己重装系统win10 如何重新安装
- 下一篇: 戴尔平板怎么快捷启动项 戴尔平板快速启动