linux进程CPU使用率高问题定位

使用工具:perf,FlameGraph
perf
内置于linux内核源码树中的性能剖析工具。
工作原理:对监控事件进行采样。
BrenDan Gregg的个人网站上使用perf工具的案例:
http://brendangregg.com/perf.html

FlameGraph
用于生成svg格式的火焰图,通过浏览器打开直观地展示热点代码路径。
下载链接:https://github.com/brendangregg/FlameGraph

操作流程:

$ perf record -e cycles -g –call-graph dwarf –p pid –o perf.data

ctrl+c结束执行(执行时间越长采样数据也越大,可能导致后面分析存在问题。),在当前目录下会生成进程ID为pid的采样数据perf.data。

执行完成后可以先用perf report命令查看下,确认下有没有错误。

$ perf report -g -i perf.data
$ perf script -i perf.data &> perf.unfold

对perf.data进行解析,执行完成后在当前目录下生成一个名为perf.unfold
的文件。

$ ./FlameGraph-master/stackcollapse-perf.pl perf.unfold &> perf.folded

折叠perf.unfold中的符号,生成文件perf.folded。

$ ./flamegraph.pl perf.folded > perf.svg

生成svg火焰图,svg火焰图可以通过浏览器打开,用于确认热点执行路径。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值