性能分析工具perf
2023-03-23 本文已影响0人
刘小白DOER
今天学习到了哔哩哔哩的一篇复盘报告,说明2021.07.13 B站崩溃的原因,笔者看完对其中的一个性能分析工具perf十分感兴趣。文章里阐述是这样说的“通过Perf发现SLB CPU热点集中在Lua函数上,怀疑跟最近上线的Lua代码有关,开始尝试回滚最近上线的Lua代码。”怀着好奇心,笔者在阿里云服务上进行测试perf这个工具。
perf 是Linux的一款性能分析工具,能够进行函数级和指令级的热点查找,可以用来分析程序中热点函数的CPU占用率,从而定位性能瓶颈。Performance analysis tools for Linux。
perf 的安装,经过测试下面的代码是成功的,如果只安装linux-tools-common会提示包不齐全的错误提示。安装完成后运行perf --version成功即是安装成功。
sudo apt install linux-tools-common linux-tools-generic linux-tools-`uname -r`
1、perf top
用于实时显示当前系统的性能统计信息。
2、perf stat
采集程序的运行时间和CPU开销。-p是指定进程。
3、perf record
来采集程序的剖析信息,并把采样结果保存在perf.data文件中。
4、perf report
分析perf.data文件,寻找采样中的性能瓶颈。