Perf命令使用收集 2019-09-24 202 words 1 min read 200 times read Contents 安装 例子 列出所有支持事件 查看某进程 CPU 消耗原因 记录所有 计数统计 跟踪调度器事件 上下文切换 内核 参考资料 安装 1sudo apt-get update && sudo apt-get install linux-tools-common linux-tools-`uname -r` linux-cloud-tools-`uname -r` linux-tools-generic linux-cloud-tools-generic -y 例子 列出所有支持事件 1sudo perf list 查看某进程 CPU 消耗原因 比如排查 redis 12345# 实时sudo perf top -p 进程PID# 记录sudo perf record -F 99 -p 进程PID --call-graph dwarf sleep 10 记录所有 12345# 记录 30 秒某进程的性能统计timeout 30 sudo perf record -p 进程PID# 查看报告sudo perf report 计数统计 12# 只收集 5 秒sudo perf stat -p 进程PID sleep 5 跟踪调度器事件 12# 只跟踪 10 秒sudo perf stat -e "sched:*" -p 进程PID sleep 10 上下文切换 1sudo perf stat -e "context-switches" -p 进程PID sleep 10 内核 查看内核是否开启 perf 1cat "/boot/config-`uname -r`" | grep "PERF_EVENT" 参考资料 https://zhuanlan.zhihu.com/p/54276509 http://www.brendangregg.com/perf.html https://abelsu7.top/2019/07/07/perf-quick-guides/ http://wiki.csie.ncku.edu.tw/embedded/perf-tutorial https://github.com/digoal/blog/blob/master/201611/20161127_01.md Author emacsist LastMod 2019-09-24 License CC BY-NC-ND 4.0 Reward wechat alipay