代码性能展现 火焰图

ubuntu安装perf

sudo apt install linux-tools-$(uname -r) linux-tools-generic

对指定进程的使用情况进行抽样

获得进程号

pgrep -f name

pgrep -f chrom
2726

采样

sudo perf record -F 30 -p 2726 -g – sleep 10
-F 每秒采样次数
-p 进程号
-g 记录调用栈
–sleep 采样持续时间

下载项目

git clone https://github.com/brendangregg/FlameGraph 

生成 svg 分析图

cd  $FlameGraph 

生成折叠后的调用栈

sudo perf record -F 99 -p 2726 -g -- sleep 10
sudo perf script > out.perf
sudo ./stackcollapse-perf.pl out.perf > out.folded
sudo ./flamegraph.pl out.folded > kernel.svg
perf script | FlameGraph/stackcollapse-perf.pl | FlameGraph/flamegraph.pl > process.svg

 grep  out.kern_folded | ./flamegraph.pl > cpuid.svg

猜你喜欢

转载自blog.csdn.net/qq_43373608/article/details/107217676