perf脚本输出的含义是什么?

11

我使用perf script命令查看了perf.data文件的结果,但我不太理解每一列的含义。例如,如果我有以下结果:

perf  3198 [000] 13156.201238: bus-cycles:  ffffffff81086e90 resched_task

perf  3198 [000] 13156.201267: instructions:  ffffffff811868e9 do_vfs_ioctl

这些数值,3198[000]13156.201238代表什么?


你运行了什么确切的命令以获得这个输出? - Jakuje
perf record -a,然后跟着 perf script - AN00
1个回答

6

这是默认列表的输出--fields(等同于-F),它看起来像是可用字段列表中的pidcputime。您可以使用以下方法进行验证:

perf script -F pid,cpu,time

如果输出结果中的第一个字段相同,则需要进行翻译。

如果不相同,则可能没有比尝试手册页面中的其他字段更好的方法(因为没有很好的文档说明)。


1
关于字段的更多信息:"逗号分隔的要打印的字段列表。 选项包括:comm,tid,pid,time,cpu,event,trace,ip,sym,dso,addr,symoff,srcline,period。 字段列表可以以类型,跟踪,sw或hw为前缀,以指示该字段列表适用于哪种事件类型。 例如,-f sw: comm,tid,time,ip,sym和-f trace: time,cpu,trace" 请参阅:https://www.systutorials.com/docs/linux/man/1-perf-script/ - lafolle

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接