效能除錯工具——oprofile

westfly發表於2015-10-24

oprofile利用cpu硬體層面提供的效能計數器(performance counter),通過計數取樣,幫助我們從程式、函式、程式碼層面找出佔用cpu的"罪魁禍首"。

常用命令

使用oprofile進行cpu使用情況檢測,需要經過初始化、啟動檢測、匯出檢測資料、檢視檢測結果等步驟,以下為常用的oprofile命令。

初始化

  • opcontrol --no-vmlinux : 指示oprofile啟動檢測後,不記錄核心模組、核心程式碼相關統計資料
  • opcontrol --init : 載入oprofile模組、oprofile驅動程式

檢測控制

  • opcontrol --start : 指示oprofile啟動檢測
  • opcontrol --stop : 指示oprofile啟動檢測
  • opcontrol --dump : 指示將oprofile檢測到的資料寫入檔案
  • opcontrol --reset : 清空之前檢測的資料記錄
  • opcontrol -h : 關閉oprofile程式

檢視檢測結果

  • opreport : 以映象(image)的角度顯示檢測結果,程式、動態庫、核心模組屬於映象範疇
  • opreport -l : 以函式的角度顯示檢測結果
  • opreport -l test : 以函式的角度,針對test程式顯示檢測結果
  • opannotate -s test : 以程式碼的角度,針對test程式顯示檢測結果
  • opannotate -s /lib64/libc-2.4.so : 以程式碼的角度,針對libc-2.4.so庫顯示檢測結果

 

相關文章