为啥“性能报告”命令啥也没显示?

Posted

技术标签:

【中文标题】为啥“性能报告”命令啥也没显示?【英文标题】:why the command "perf report" shows nothing?为什么“性能报告”命令什么也没显示? 【发布时间】:2012-12-11 12:10:53 【问题描述】:

我使用“perf record ./exe”,它会生成文件“perf.data”; 但是,当我使用“性能报告”检查数据时,它什么也没显示,为什么? 我的性能版本是“0.0.2.PERF”并使用 Open suse Linux Enterprise Server 11 (x86_64)。

当我在 Ubuntu 中做同样的事情时,它运行良好,Open suse 和 Ubuntu 之间有什么区别吗?

【问题讨论】:

【参考方案1】:

是的,ubuntu 和 open suse 中的 perf 二进制文件具有不同的版本。你最好从它的源代码编译 perf(如果你有安装依赖项的权限,那就是)。与 suse linux 中的相比,linus 提示中的 perf 在功能和错误修复方面相差数光年:

$ git clone git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
<make coffee, or something>

$ cd linux/tools/perf
$ make prefix=/usr/local install install-man
<it will complain about missing libs here, if any, which you should be able
 to deduce the corresponding rpm packages to install them from>

至于性能学习资源 - 恕我直言,它们还不够。我从阅读perf tutorial at its wiki site 开始。然后我通过gmane 浏览了perf-user mailing list。我发现 this post on off-box analysis by acme(红帽名声)对我需要做的事情最有帮助。您最好浏览一下 perf 用户邮件列表。

最后,我还浏览了 perf 的 git log 消息,以查看人们一直在努力的功能和修复:

$ cd tools/perf
$ git log -- .

【讨论】:

如果您不想煮咖啡,请使用git clone --depth 1 git://git... 我得到了一些提示。非常感谢! 你能推荐一些性能学习资源吗?非常感谢! 我已经编辑了我的答案,以包括我过去几周使用的 perf 学习资源 :) 有独立的 perf 源生成为 tar.gz:mirrors.edge.kernel.org/pub/linux/kernel/tools/perf

以上是关于为啥“性能报告”命令啥也没显示?的主要内容,如果未能解决你的问题,请参考以下文章

ubuntu 上的 QGLWidget 啥也没显示

Flutter web ListView.builder啥也没显示

php5-sqlite 啥也没显示

为啥我的 json.Marshal() 啥也没返回? [复制]

为啥当我在导航控制器中重置视图控制器的框架时啥也没发生

为啥我啥也没做,wireshark却从打开就一直在捕捉报文呢?