一、perf概述
perf是一個Linux性能監測工具,它是在內核中實現的,可以對CPU、緩存、內存、IO等進行性能分析。在perf的掌握下,可以更深刻地了解應用程序或操作系統內部運行的情況,進而優化性能,提高效率。
二、perf安裝
在開始安裝perf前,需要確保系統已經擁有gcc、make等常用工具和headers(linux-headers)。接下來,根據Linux系統的不同版本,可以選擇以下任意一種方式來安裝perf。
方式1:yum安裝
sudo yum install -y perf
上述命令會在yum倉庫中檢索perf的安裝包,如果系統已經配置好了對應版本的yum源,則可以直接通過該方式安裝perf。
方式2:編譯安裝
從Linux內核源碼中編譯安裝perf是另一種常用的方式,可以通過如下步驟來安裝:
1. 下載源碼
git clone git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
2. 切換至對應的版本分支
cd linux
git branch -r # 查看所有遠程分支
git branch -a # 查看所有分支
git checkout v5.4 # 切換到v5.4分支
3. 編譯安裝perf
cd tools/perf
make
此時,已經編譯好了perf,可以通過以下命令來測試perf是否成功安裝:
cd ../..
sudo perf top
三、perf使用
perf提供了豐富的命令行工具,用於各種性能分析的場景。下面列舉一些常用的示例:
方式1:監測CPU使用率
perf的默認事件為CPU時鐘周期,可以使用如下命令來查看CPU的使用率,請注意,需要以root權限運行:
sudo perf stat -e cycles -e instructions sleep 3
方式2:監測函數調用次數
perf可以監測指定函數的調用次數,並輸出結果,例如:
perf record -e cycles -g function_name # 記錄調用函數
perf report --stdio # 輸出監測結果
方式3:監測內存佔用情況
perf可以監測內存的佔用情況,並輸出各種指標,例如:
perf record -g -e memory:GPGPU:local_access -aR dd if=/dev/zero of=/dev/null bs=512K count=1000
perf report --stdio --sort=dso
總結
本文簡要介紹了perf的概念、安裝方法及使用技巧,可以根據具體需求來選擇對應的命令行工具,進行更為詳盡的性能分析工作。
原創文章,作者:ZPKUF,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/361977.html