生成采集文件

1
sudo perf record -F 100 -p 1847 -g --sleep 30
  • -F 100: 每秒100次的采样率
  • -p 1847: 要采样的PID
  • – sleep 30: 执行30秒

输出为perf.data

1
perf script -i perf.data > perf.unfold

转为火焰图

1
2
3
4
git clone https://github.com/brendangregg/FlameGraph.git
cd FlameGraph

./stackcollapse-perf.pl perf.unfolf | ./flamegraph.pl > out.svg

结果