我有一个解析Linux命令perf输出的程序。它需要使用选项-x
,(字段分隔符选项)。我想使用perf提取经过的时间
(而不是任务时间
或CPU时钟
)。但是当我使用-x
选项时,在输出中找不到经过的时间,并且我找不到相应的perf事件。以下是示例输出:
perf stat ls
============
Performance counter stats for 'ls':
0.934889 task-clock (msec) # 0.740 CPUs utilized
6 context-switches # 0.006 M/sec
0 cpu-migrations # 0.000 K/sec
261 page-faults # 0.279 M/sec
1,937,910 cycles # 2.073 GHz
<not supported> stalled-cycles-frontend
<not supported> stalled-cycles-backend
1,616,944 instructions # 0.83 insns per cycle
317,016 branches # 339.095 M/sec
12,439 branch-misses # 3.92% of all branches
0.001262625 seconds time elapsed //here we have it
现在支持字段分隔符选项。
perf stat -x, ls
================
2.359807,task-clock
6,context-switches
0,cpu-migrations
261,page-faults
1863028,cycles
<not supported>,stalled-cycles-frontend
<not supported>,stalled-cycles-backend
1670644,instructions
325047,branches
12251,branch-misses
非常感谢您提供的任何帮助。
perf stat ls
的输出格式化为perf stat -x ls
呢?当然要包括“seconds time elapsed”。 - Milind Dumbare