gperftools效能檢測工具使用

2021-10-12 09:39:17 字數 1409 閱讀 8824

一、安裝環境

1、安裝編譯libunwind (linux 64位機必裝)

git clone -b v1.3-stable

./autogen.sh

./configure

make

sudo make install

2、echo 『/usr/local/lib』 > /etc/ld.so.conf.d/local.conf

ldconfig

3、安裝編譯gperftools

wget

./autogen.sh

./configure

make

sudo make install

4、編譯工程

a、makefile檔案 新增 一下內容

b、在工程main函式檔案中引用標頭檔案   #include c、在需要檢測的函式的啟停位置引用 profiler函式   profilerstart("檔名.prof");    profilerstop();
注:使用gperftools收集執行資料的時候,需要在需要開始收集的位置呼叫profilerstart(),並在結束收集的時候呼叫profilerstop(),收集到的資料才會被寫入到檔案裡面去。

gperftools效能分析通過抽樣方法完成,預設是1秒100個樣本,即乙個樣本是10毫秒,因此程式執行時間要長一些。

二、檢視報告

程式結束之後會產生.prof檔案。可通過一下方式檢視。

1、轉化成txt

pprof 程式名 prof檔案 --text 可在後台直接顯示

pprof 程式名 prof檔案 --text > 檔名.txt 轉化成txt格式檔案

解析:

輸出資料解析:

每行包含6列資料,依次為:

1 分析樣本數量(不包含其他函式呼叫)

2 分析樣本百分比(不包含其他函式呼叫)

3 目前為止的分析樣本百分比(不包含其他函式呼叫)

4 分析樣本數量(包含其他函式呼叫)

5 分析樣本百分比(包含其他函式呼叫)

6 函式名

樣本數量相當於消耗的cpu時間。

整個函式消耗的cpu時間相當於包括函式內部其他函式呼叫所消耗的cpu時間

2、轉化成pdf格式的檔案,以樹狀圖的形式展示

此種方式需先安裝兩種外掛程式:

yum install -y graphviz ghostscript

然後輸入命令

pprof --pdf 程式名 prof檔案 > 檔名.pdf

解析:樹上的每個節點代表乙個函式,節點資料格式:

1、函式名 或者 類名+方法名

2、不包含內部函式呼叫的樣本數 (百分比)

3、of 包含內部函式呼叫的樣本數 (百分比) #如果沒有內部呼叫函式則這一項資料不顯示

Oracle Statspack效能診斷工具

statspack是oracle強大的狀態收集及效能診斷工具,是dba及資料庫相關人員進行問題診斷的重要手段,是dbad的一大利器 1 系統引數設定 先查詢系統引數 show parameter job queue processes show parameter timed statistics ...

效能檢測 RAM

cpu fps 都已介紹過了,自然避免不了要介紹一波記憶體。記憶體分為兩大類 ram 和 rom。本篇所說的效能檢測 記憶體,主要說的就是 ram。在你對某件事無從下手的時候,不妨去看看大佬們的寫法。這個類我們或許都沒聽說過,不過從大佬們的原始碼中,不難發現,檢測記憶體的方法主要依賴於此類。既然主要...

MYSQL效能檢測和優化

首先是如何檢查sql的效率.1.善用explain 設計sql後,應使用explain命令檢查sql,看是否使用到索引,是否存在filesort,重點檢查檢索的行數 rows 是否太大。一般來說.rows 1000,是在可接受的範圍內的。rows在1000 1w之間,在密集訪問時可能導致效能問題,但...