简介

安装

perf安装

perf指令位于linux-tools通用包内,因此要安装适配当前运行内核的包

1
2
3
sudo apt update -y
# 安装 linux-tools 通用包(适配当前运行的内核)
sudo apt install -y linux-tools-generic linux-tools-$(uname -r)

perl 安装

1
sudo apt install -y perl

获取火焰图生成工具

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

开始性能分析

perf采样

1
2
3
4
5
6
sudo perf record -F 99 -g ./cmd --sleep 60
# 参数说明:
# -F 99 : 每秒采样 99 次(平衡精度与开销)
# -a : 监控所有 CPU
# -g : 记录调用栈(stack trace)
# -- sleep : 采样持续时间

绘制火焰图

1
2
3
4
#perf record -g ./cmd sleep10
sudo perf script -i perf.data &> perf.unfold && \
sudo ./FlameGraph/stackcollapse-perf.pl perf.unfold &> perf.folded && \
sudo ./FlameGraph/flamegraph.pl perf.folded > perf.svg