Re: [PATCH 4/7] perf, tools, stat: Document CSV format in manpage

From: Jiri Olsa
Date: Wed Mar 02 2016 - 06:23:55 EST


On Tue, Mar 01, 2016 at 10:57:49AM -0800, Andi Kleen wrote:
> From: Andi Kleen <ak@xxxxxxxxxxxxxxx>
>
> With all the recently added fields in the perf stat CSV output
> we should finally document them in the man page. Do this here.
>
> v2: Fix fields in documentation (Jiri)
> v3: fix order of fields again (Jiri)
> v4: Change order again.
> v5: Document more fields (Jiri)
> Signed-off-by: Andi Kleen <ak@xxxxxxxxxxxxxxx>
> ---
> tools/perf/Documentation/perf-stat.txt | 23 +++++++++++++++++++++++
> 1 file changed, 23 insertions(+)
>
> diff --git a/tools/perf/Documentation/perf-stat.txt b/tools/perf/Documentation/perf-stat.txt
> index 52ef7a9..de1586b 100644
> --- a/tools/perf/Documentation/perf-stat.txt
> +++ b/tools/perf/Documentation/perf-stat.txt
> @@ -211,6 +211,29 @@ $ perf stat -- make -j
>
> Wall-clock time elapsed: 719.554352 msecs
>
> +CSV FORMAT
> +----------
> +
> +With -x, perf stat is able to output a not-quite-CSV format output
> +Commas in the output are not put into "". To make it easy to parse
> +it is recommended to use a different character like -x \;
> +
> +The fields are in this order:
> +
> + - optional CPU, core, or socket identifier
^ trailing whitespace

> + - optional number of cores aggregated
> + - optional usec time stamp in fractions of second (with -I xxx)

the interval time should be the first item

[jolsa@krava perf]$ sudo ./perf stat --per-socket -a -I 1000 -x, -e cycles
1.000159610,S0,4,298027426,,cycles,4002819542,100.00
1.409246878,S0,4,110643936,,cycles,1637336562,100.00

[jolsa@krava perf]$ sudo ./perf stat --per-core -a -I 1000 -x, -e cycles
1.000145489,S0-C0,2,130631326,,cycles,2001381034,100.00
1.000145489,S0-C1,2,161500168,,cycles,2001374772,100.00
1.448799712,S0-C0,2,102189718,,cycles,897831386,100.00
1.448799712,S0-C1,2,112392552,,cycles,897832554,100.00

[jolsa@krava perf]$ sudo ./perf stat -A -a -I 1000 -x, -e cycles
1.000127414,CPU0,88288182,,cycles,1000705402,100.00
1.000127414,CPU1,63578396,,cycles,1000704841,100.00

jirka

> + - counter value
> + - unit of the counter value or empty
> + - event name
> + - run time of counter
> + - percentage of measurement time the counter was running
> + - optional variance if multiple values are collected with -r
> + - optional metric value
> + - optional unit of metric
> +
> +Additional metrics may be printed with all earlier fields being empty.
> +
> SEE ALSO
> --------
> linkperf:perf-top[1], linkperf:perf-list[1]
> --
> 2.5.0
>