安装
sudo apt-get update
sudo apt-get install linux-tools-common linux-tools-generic linux-tools-`uname -r`
find /usr -name perf
# ex:
ln -s /usr/lib/linux-tools/5.4.0-169-generic/perf /usr/bin/perf安装中可能遇到的问题
E: Unable to locate package linux-tools-<kernel_version> ... ...
即使用的内核版本没有对应的linux-tools, 那就取消安装最后一个 linux-tools-uname -r. 例如笔者使用的4.14.48的内核版本就找不到. 最终链接的如上所示是5.4.0的版本.
不知道这么使用会不会有问题, 总之目前使用下来没什么问题.
使用
cd <workspace>
# 准备生成火焰图的工具:
git clone <https://github.com/brendangregg/FlameGraph.git>
# 生成perf.data文件
perf record -g -- <command with arguments>
# 生成火焰图
perf script | ./FlameGraph/stackcollapse-perf.pl | ./FlameGraph/flamegraph.pl > process.svg