From: Andi Kleen <andi@firstfloor.org>
To: acme@kernel.org
Cc: jolsa@kernel.org, linux-kernel@vger.kernel.org,
Andi Kleen <andi@firstfloor.org>, Andi Kleen <ak@linux.intel.com>
Subject: [PATCH v2] perf tools: Support -x for perf stat report
Date: Tue, 27 Oct 2020 22:15:10 -0700 [thread overview]
Message-ID: <20201028051510.9526-1-andi@firstfloor.org> (raw)
Add support for the -x, option to enable CSV output with perf stat
report. Useful to parse the information with other programs.
% perf stat record --quiet -a -I 1000 sleep 5
% perf stat report -x,
1.000838672,4003.55,msec,cpu-clock,4003548736,100.00,,
1.000838672,11243,,context-switches,4003631885,100.00,0.003,M/sec
1.000838672,1682,,cpu-migrations,4003672150,100.00,0.420,K/sec
1.000838672,13244,,page-faults,4003697471,100.00,0.003,M/sec
1.000838672,2953214077,,cycles,4003715495,100.00,0.738,GHz
1.000838672,4380820799,,instructions,4003738270,100.00,1.48,insn per cycle
1.000838672,809865653,,branches,4003760616,100.00,202.287,M/sec
1.000838672,12439843,,branch-misses,4003780785,100.00,1.54,of all branches
...
Signed-off-by: Andi Kleen <ak@linux.intel.com>
---
v2: Fix default output (Jiri). Also handle \t as special value like the
original parser (Andi)
---
tools/perf/builtin-stat.c | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/tools/perf/builtin-stat.c b/tools/perf/builtin-stat.c
index 743fe47e7a88..2f7eb6b68344 100644
--- a/tools/perf/builtin-stat.c
+++ b/tools/perf/builtin-stat.c
@@ -1988,6 +1988,8 @@ static int __cmd_report(int argc, const char **argv)
"aggregate counts per numa node", AGGR_NODE),
OPT_SET_UINT('A', "no-aggr", &perf_stat.aggr_mode,
"disable CPU count aggregation", AGGR_NONE),
+ OPT_STRING('x', "field-separator", &stat_config.csv_sep, "separator",
+ "print counts with custom separator"),
OPT_END()
};
struct stat st;
@@ -2002,6 +2004,13 @@ static int __cmd_report(int argc, const char **argv)
input_name = "perf.data";
}
+ if (strcmp(stat_config.csv_sep, " ")) {
+ stat_config.csv_output = true;
+ if (!strcmp(stat_config.csv_sep, "\\t"))
+ stat_config.csv_sep = "\t";
+ stat_config.big_num = false;
+ }
+
perf_stat.data.path = input_name;
perf_stat.data.mode = PERF_DATA_MODE_READ;
--
2.28.0
next reply other threads:[~2020-10-29 2:04 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-10-28 5:15 Andi Kleen [this message]
2020-10-31 9:53 ` [PATCH v2] perf tools: Support -x for perf stat report Jiri Olsa
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20201028051510.9526-1-andi@firstfloor.org \
--to=andi@firstfloor.org \
--cc=acme@kernel.org \
--cc=ak@linux.intel.com \
--cc=jolsa@kernel.org \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox