[PATCH 35/61] perf c2c report: Add dram related sort keys

From: Jiri Olsa
Date: Mon Sep 19 2016 - 09:20:37 EST


Adding dram related dimension key wrappers.

They are to be displayed in the main cachelines
overall output:

dram_lcl, dram_rmt

They display DRAM rmt/lcl access numbers for
specific cacheline.

Link: http://lkml.kernel.org/n/tip-tl3qqi9ehk6g1fla4z7y0ykd@xxxxxxxxxxxxxx
Signed-off-by: Jiri Olsa <jolsa@xxxxxxxxxx>
---
tools/perf/builtin-c2c.c | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)

diff --git a/tools/perf/builtin-c2c.c b/tools/perf/builtin-c2c.c
index 0613669cd8b4..55f8b2fece3d 100644
--- a/tools/perf/builtin-c2c.c
+++ b/tools/perf/builtin-c2c.c
@@ -807,6 +807,9 @@ percent_stores_l1miss_cmp(struct perf_hpp_fmt *fmt __maybe_unused,
return per_left - per_right;
}

+STAT_FN(lcl_dram)
+STAT_FN(rmt_dram)
+
#define HEADER_LOW(__h) \
{ \
.line[1] = { \
@@ -1055,6 +1058,22 @@ static struct c2c_dimension dim_percent_stores_l1miss = {
.width = 7,
};

+static struct c2c_dimension dim_dram_lcl = {
+ .header = HEADER_SPAN("--- Load Dram ----", "Lcl", 1),
+ .name = "dram_lcl",
+ .cmp = lcl_dram_cmp,
+ .entry = lcl_dram_entry,
+ .width = 8,
+};
+
+static struct c2c_dimension dim_dram_rmt = {
+ .header = HEADER_SPAN_LOW("Rmt"),
+ .name = "dram_rmt",
+ .cmp = rmt_dram_cmp,
+ .entry = rmt_dram_entry,
+ .width = 8,
+};
+
#undef HEADER_LOW
#undef HEADER_BOTH
#undef HEADER_SPAN
@@ -1087,6 +1106,8 @@ static struct c2c_dimension *dimensions[] = {
&dim_percent_lcl_hitm,
&dim_percent_stores_l1hit,
&dim_percent_stores_l1miss,
+ &dim_dram_lcl,
+ &dim_dram_rmt,
NULL,
};

--
2.7.4