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