perf 脚本输出的含义是啥?
Posted
技术标签:
【中文标题】perf 脚本输出的含义是啥?【英文标题】:What is the meaning of perf script output?perf 脚本输出的含义是什么? 【发布时间】:2016-08-02 14:34:04 【问题描述】:我使用 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
指的值是什么?
【问题讨论】:
你运行了什么命令来得到这个输出? 性能记录-a,后跟性能脚本 【参考方案1】:它是从--fields
的默认列表输出的(-F
等效),它看起来像可用字段列表中的pid
、cpu
和time
。您可以使用
perf script -F pid,cpu,time
如果它在输出中具有相同的第一个字段。
如果没有,可能没有比从手册页尝试其他字段更好的方法了(没有好的文档)。
【讨论】:
有关字段的更多信息:“要打印的字段的逗号分隔列表。选项有:comm, tid, pid, time, cpu, event, trace, ip, sym, dso, addr, symoff, srcline, period. 字段列表可以在前面加上类型, trace, sw 或 hw, 以指示字段列表适用于哪个事件类型. 例如, -f sw:comm,tid,time,ip,sym 和 -f trace:时间,CPU,跟踪“检查这个:systutorials.com/docs/linux/man/1-perf-script以上是关于perf 脚本输出的含义是啥?的主要内容,如果未能解决你的问题,请参考以下文章
使用 KchacheGrind 分析的 cProfile 输出中 <cycle 5> 函数的含义是啥?
性能:性能统计输出中的 [<n percent>] 记录是啥意思?