我对这个函数的说明有一些问题。谁能告诉我如何获得一个表示,我可以看到哪个函数使用了多少时间?
但这些应该只是我的(主板飞行员)的函数。内核调用不应该被深化。
所以我想看看我的程序中哪个函数使用了最多的时间来分析和改进它。
在我的“输出树”中,这已经被标记为(k)和(.)。也许在flamegraph中有过滤函数,或者已经可以过滤perf,这样我就只能看到程序中的函数了?
感谢您的帮助!:)
发布于 2020-10-19 17:31:13
关于忽略内核调用,我建议您运行perf而不使用sudo,或者只监控用户空间中的周期,如下面的示例所示:
perf record -g -e cycles:u ls请查看perf list的手册页,以了解如何正确使用事件修饰符。
编辑
按照PeterCordes的建议,从Linux4.6开始,您只需将--all-user选项添加到perf命令中,即可收集用户空间中所有选定的事件(甚至为perf record选定的默认事件都是cycles)。
https://stackoverflow.com/questions/64424437
复制相似问题