Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1489007
| From | Jiri Olsa <jolsa@kernel.org> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | [PATCH 21/57] perf c2c report: Add offset dimension key |
| Date | 2016-09-22 17:40 +0200 |
| Message-ID | <skegr-8a2-55@gated-at.bofh.it> (permalink) |
| References | <skegp-8a2-3@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
Adding cacheline offset dimension key support.
It displays cacheline offset as hex number.
Link: http://lkml.kernel.org/n/tip-m0424ye98lqveg5nopto8qww@git.kernel.org
Signed-off-by: Jiri Olsa <jolsa@kernel.org>
---
tools/perf/builtin-c2c.c | 35 +++++++++++++++++++++++++++++++++++
1 file changed, 35 insertions(+)
diff --git a/tools/perf/builtin-c2c.c b/tools/perf/builtin-c2c.c
index 335c0fd30757..7c52481ec36b 100644
--- a/tools/perf/builtin-c2c.c
+++ b/tools/perf/builtin-c2c.c
@@ -300,6 +300,32 @@ static int dcacheline_entry(struct perf_hpp_fmt *fmt, struct perf_hpp *hpp,
return snprintf(hpp->buf, hpp->size, "%*s", width, hex_str(addr));
}
+static int offset_entry(struct perf_hpp_fmt *fmt, struct perf_hpp *hpp,
+ struct hist_entry *he)
+{
+ uint64_t addr = 0;
+ int width = c2c_width(fmt, hpp, he->hists);
+
+ if (he->mem_info)
+ addr = cl_offset(he->mem_info->daddr.al_addr);
+
+ return snprintf(hpp->buf, hpp->size, "%*s", width, hex_str(addr));
+}
+
+static int64_t
+offset_cmp(struct perf_hpp_fmt *fmt __maybe_unused,
+ struct hist_entry *left, struct hist_entry *right)
+{
+ uint64_t l = 0, r = 0;
+
+ if (left->mem_info)
+ l = cl_offset(left->mem_info->daddr.addr);
+ if (right->mem_info)
+ r = cl_offset(right->mem_info->daddr.addr);
+
+ return (int64_t)(r - l);
+}
+
#define HEADER_LOW(__h) \
{ \
.line[1] = { \
@@ -343,8 +369,17 @@ static struct c2c_dimension dim_dcacheline = {
.width = 18,
};
+static struct c2c_dimension dim_offset = {
+ .header = HEADER_BOTH("Data address", "Offset"),
+ .name = "offset",
+ .cmp = offset_cmp,
+ .entry = offset_entry,
+ .width = 18,
+};
+
static struct c2c_dimension *dimensions[] = {
&dim_dcacheline,
+ &dim_offset,
NULL,
};
--
2.7.4
Back to linux.kernel | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
[PATCHv4 00/57] perf c2c: Add new tool to analyze cacheline contention on NUMA systems Jiri Olsa <jolsa@kernel.org> - 2016-09-22 17:40 +0200
[PATCH 01/57] perf tools: Add __hist_entry__snprintf function Jiri Olsa <jolsa@kernel.org> - 2016-09-22 17:40 +0200
Re: [PATCH 01/57] perf tools: Add __hist_entry__snprintf function Arnaldo Carvalho de Melo <acme@kernel.org> - 2016-09-22 18:00 +0200
[tip:perf/core] perf hists: Add __hist_entry__snprintf function tip-bot for Jiri Olsa <tipbot@zytor.com> - 2016-09-23 07:30 +0200
[PATCH 43/57] perf c2c report: Add main browser Jiri Olsa <jolsa@kernel.org> - 2016-09-22 17:40 +0200
[PATCH 21/57] perf c2c report: Add offset dimension key Jiri Olsa <jolsa@kernel.org> - 2016-09-22 17:40 +0200
[PATCH 55/57] perf c2c report: Iterate node display in browser Jiri Olsa <jolsa@kernel.org> - 2016-09-22 17:40 +0200
[PATCH 41/57] perf c2c report: Set final resort fields Jiri Olsa <jolsa@kernel.org> - 2016-09-22 17:50 +0200
[PATCH 23/57] perf c2c report: Add hitm related dimension keys Jiri Olsa <jolsa@kernel.org> - 2016-09-22 17:50 +0200
[PATCH 51/57] perf c2c report: Allow to set cacheline sort fields Jiri Olsa <jolsa@kernel.org> - 2016-09-22 17:50 +0200
[PATCH 39/57] perf c2c report: Add src line sort key Jiri Olsa <jolsa@kernel.org> - 2016-09-22 17:50 +0200
[PATCH 44/57] perf c2c report: Add cacheline browser Jiri Olsa <jolsa@kernel.org> - 2016-09-22 17:50 +0200
[PATCH 30/57] perf c2c report: Add hitm percent sort key Jiri Olsa <jolsa@kernel.org> - 2016-09-22 17:50 +0200
[PATCH 42/57] perf c2c report: Add stdio output support Jiri Olsa <jolsa@kernel.org> - 2016-09-22 17:50 +0200
[PATCH 53/57] perf c2c report: Add cacheline index entry Jiri Olsa <jolsa@kernel.org> - 2016-09-22 17:50 +0200
[PATCH 47/57] perf c2c report: Add c2c related stats stdio output Jiri Olsa <jolsa@kernel.org> - 2016-09-22 17:50 +0200
[PATCH 24/57] perf c2c report: Add stores related dimension keys Jiri Olsa <jolsa@kernel.org> - 2016-09-22 17:50 +0200
[PATCH 56/57] perf c2c report: Add help windows Jiri Olsa <jolsa@kernel.org> - 2016-09-22 17:50 +0200
[PATCH 31/57] perf c2c report: Add hitm/store percent related sort keys Jiri Olsa <jolsa@kernel.org> - 2016-09-22 17:50 +0200
[PATCH 22/57] perf c2c report: Add iaddr dimension key Jiri Olsa <jolsa@kernel.org> - 2016-09-22 17:50 +0200
[PATCH 33/57] perf c2c report: Add pid sort key Jiri Olsa <jolsa@kernel.org> - 2016-09-22 17:50 +0200
[PATCH 49/57] perf c2c report: Limit the cachelines table entries Jiri Olsa <jolsa@kernel.org> - 2016-09-22 17:50 +0200
[PATCH 28/57] perf c2c report: Add total record sort key Jiri Olsa <jolsa@kernel.org> - 2016-09-22 17:50 +0200
[PATCH 26/57] perf c2c report: Add llc and remote loads related dimension keys Jiri Olsa <jolsa@kernel.org> - 2016-09-22 17:50 +0200
[PATCH 34/57] perf c2c report: Add tid sort key Jiri Olsa <jolsa@kernel.org> - 2016-09-22 17:50 +0200
[PATCH 25/57] perf c2c report: Add loads related dimension keys Jiri Olsa <jolsa@kernel.org> - 2016-09-22 17:50 +0200
[PATCH 37/57] perf c2c report: Add stats related sort keys Jiri Olsa <jolsa@kernel.org> - 2016-09-22 17:50 +0200
[PATCH 50/57] perf c2c report: Add support to choose local HITMs Jiri Olsa <jolsa@kernel.org> - 2016-09-22 17:50 +0200
[PATCH 36/57] perf c2c report: Add node sort key Jiri Olsa <jolsa@kernel.org> - 2016-09-22 17:50 +0200
[PATCH 45/57] perf c2c report: Add global stats stdio output Jiri Olsa <jolsa@kernel.org> - 2016-09-22 17:50 +0200
[PATCH 52/57] perf c2c report: Recalc width of global sort entries Jiri Olsa <jolsa@kernel.org> - 2016-09-22 17:50 +0200
[PATCH 38/57] perf c2c report: Add cpu cnt sort key Jiri Olsa <jolsa@kernel.org> - 2016-09-22 17:50 +0200
[PATCH 08/57] perf tools: Make __hist_entry__snprintf function global Jiri Olsa <jolsa@kernel.org> - 2016-09-22 18:00 +0200
Re: [PATCH 08/57] perf tools: Make __hist_entry__snprintf function global Arnaldo Carvalho de Melo <acme@kernel.org> - 2016-09-22 18:00 +0200
[tip:perf/core] perf hists: Make __hist_entry__snprintf function global tip-bot for Jiri Olsa <tipbot@zytor.com> - 2016-09-23 07:40 +0200
[PATCH 06/57] perf tools: Make several sorting functions global Jiri Olsa <jolsa@kernel.org> - 2016-09-22 18:00 +0200
Re: [PATCH 06/57] perf tools: Make several sorting functions global Arnaldo Carvalho de Melo <acme@kernel.org> - 2016-09-22 18:00 +0200
[tip:perf/core] perf tools: Make several sorting functions global tip-bot for Jiri Olsa <tipbot@zytor.com> - 2016-09-23 07:40 +0200
[PATCH 19/57] perf c2c report: Add header macros Jiri Olsa <jolsa@kernel.org> - 2016-09-22 18:00 +0200
Re: [PATCH 04/57] perf tools: Make reset_dimensions global Arnaldo Carvalho de Melo <acme@kernel.org> - 2016-09-22 18:00 +0200
[PATCH 03/57] perf tools: Introduce c2c_add_stats function Jiri Olsa <jolsa@kernel.org> - 2016-09-22 18:00 +0200
[PATCH 11/57] perf c2c: Add record subcommand Jiri Olsa <jolsa@kernel.org> - 2016-09-22 18:00 +0200
[PATCH 04/57] perf tools: Make reset_dimensions global Jiri Olsa <jolsa@kernel.org> - 2016-09-22 18:00 +0200
[tip:perf/core] perf tools: Make reset_dimensions global tip-bot for Jiri Olsa <tipbot@zytor.com> - 2016-09-23 07:30 +0200
[PATCH 17/57] perf c2c report: Add cacheline hists processing Jiri Olsa <jolsa@kernel.org> - 2016-09-22 18:00 +0200
[PATCH 14/57] perf c2c report: Add sort_entry dimension support Jiri Olsa <jolsa@kernel.org> - 2016-09-22 18:00 +0200
[PATCH 09/57] perf tools: Make hists__fprintf_headers function global Jiri Olsa <jolsa@kernel.org> - 2016-09-22 18:00 +0200
Re: [PATCH 09/57] perf tools: Make hists__fprintf_headers function global Arnaldo Carvalho de Melo <acme@kernel.org> - 2016-09-22 18:00 +0200
[tip:perf/core] perf hists: Make hists__fprintf_headers function global tip-bot for Jiri Olsa <tipbot@zytor.com> - 2016-09-23 07:40 +0200
[PATCH 15/57] perf c2c report: Fallback to standard dimensions Jiri Olsa <jolsa@kernel.org> - 2016-09-22 18:00 +0200
[PATCH 10/57] perf c2c: Add c2c command Jiri Olsa <jolsa@kernel.org> - 2016-09-22 18:00 +0200
[PATCH 12/57] perf c2c: Add report subcommand Jiri Olsa <jolsa@kernel.org> - 2016-09-22 18:00 +0200
csiph-web