Perf工具
介绍
Perf工具是非常强大的Linux性能分析工具,可以通过该工具获得进程内的调用情况、资源消耗情况并查找分析热点函数。
命令参考举例:
命令 |
说明 |
---|---|
perf top |
查看当前系统中的热点函数。 |
perf sched record -- sleep 1 -p $PID |
记录进程在1s内的系统调用。 |
perf sched latency --sort max |
查看上一步记录的结果,以调度延迟排序。 |
安装方式
以CentOS为例,使用如下命令安装:
# yum -y install perf
使用方法
- 通过perf top命令查找热点函数。
该命令统计各个函数在某个性能事件上的热度,默认显示CPU占用率,可以通过“-e”监控其它事件。
- Overhead表示当前事件在全部事件中占的比例。
- Shared Object表示当前事件生产者,如kernel、perf命令、C语言库函数等。
- Symbol则表示热点事件对应的函数名称。
通过热点函数,我们可以找到消耗资源较多的行为,从而有针对性的进行优化。
- 收集一段时间内的线程调用。
perf sched record命令用于记录一段时间内,进程的调用情况。“-p”后接进程号,“sleep”后接统计时长,单位为秒。收集到的信息自动存放在当前目录下,文件名为perf.data。
- 解析收集到的线程调度信息。
perf sched latency命令可以解析当前目录下的perf.data文件。“-s”表示进行排序,后接参数“max”表示按照最大延迟时间大小排序。
父主题: 常用性能监测工具