性能测试工具perf安装与使用

1.性能测试介绍

《超全整理!Linux 性能分析工具汇总》
https://zhuanlan.zhihu.com/p/358956587

2.perf安装

在终端输入

~$ perf
按照一步步提示安装中会出现如下错误
正在读取软件包列表... 完成
正在分析软件包的依赖关系树       
正在读取状态信息... 完成       
E: 无法定位软件包 linux-tools-4.15.0-126-generic
...

因此换一种方法安装,直接下载与当前内核版本一致的工具

查看kernel

~$ uname -a
Linux shen-G3-3579 4.15.0-126-generic #129~16.04.1-Ubuntu SMP Tue Nov 24 11:22:40 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux

去对应的网站上下载4.15的版本 (http://ftp.sjtu.edu.cn/sites/ftp.kernel.org/pub/linux/kernel/)

根据kernel版本选择v4.x/下载linux-4.15.tar.gz
然后解压

~$ tar -zxvf linux-4.15.tar.gz
# 进入如下目录
~$ cd linux-4.15/tools/perf
~$ make
~$ make install
# 查看perf的安装情况
~$ perf --version
# 但是切换一个终端就找不到了,简单的方法,找到perf执行文件的路径,我的在Home的bin中,将之copy到/usr/bin中即可

在使用perf stat xx程序 时出现了error

Error:
You may not have permission to collect stats.
...

解决方法

~$ sudo gedit /etc/sysctl.conf
在最后两行添加
kernel.kptr_restrict=0  (如果是ubuntu16.04则加入该配置)
kernel.perf_event_paranoid= -1
# 更新一下
~$ sudo sysctl -p

3.perf使用

~$ perf top -p 进程id
# 或者
~$ perf top -e cpu-clock -p 进程id

安装参考如下
https://blog.csdn.net/qq_48201696/article/details/126381924
https://www.cnblogs.com/ber619/p/13431817.html
https://blog.csdn.net/FZeroTHero/article/details/102909990
https://blog.csdn.net/weixin_40378209/article/details/124047882
使用参考如下
https://blog.csdn.net/qq_15437629/article/details/117824718
https://blog.csdn.net/qq_42604176/article/details/120315631

posted on 2023-03-28 17:55  JJ_S  阅读(2662)  评论(0编辑  收藏  举报