[PATCH 34/52] perf c2c report: Set final resort fields

From: Arnaldo Carvalho de Melo
Date: Thu Oct 20 2016 - 11:07:24 EST


From: Jiri Olsa <jolsa@xxxxxxxxxx>

Set resort/display fields for both cachelines and single cacheline
displays.

Cachelines are sorted on:

rmt_hitm

will be made configurable in following patches.

Following fields are display for cachelines:

dcacheline
tot_recs
percent_hitm
tot_hitm,lcl_hitm,rmt_hitm
stores,stores_l1hit,stores_l1miss
dram_lcl,dram_rmt
ld_llcmiss
tot_loads
ld_fbhit,ld_l1hit,ld_l2hit
ld_lclhit,ld_rmthit

The single cacheline is sort by:

offset,rmt_hitm,lcl_hitm

will be made configurable in following patches.

Following fields are display for each cacheline:

percent_rmt_hitm
percent_lcl_hitm
percent_stores_l1hit
percent_stores_l1miss
offset
pid
tid
mean_rmt
mean_lcl
mean_load
cpucnt
symbol
dso
node

Signed-off-by: Jiri Olsa <jolsa@xxxxxxxxxx>
Cc: Andi Kleen <andi@xxxxxxxxxxxxxx>
Cc: David Ahern <dsahern@xxxxxxxxx>
Cc: Don Zickus <dzickus@xxxxxxxxxx>
Cc: Joe Mario <jmario@xxxxxxxxxx>
Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
Cc: Peter Zijlstra <a.p.zijlstra@xxxxxxxxx>
Link: http://lkml.kernel.org/n/tip-0rclftliywdq9qr2sjbugb6b@xxxxxxxxxxxxxx
Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
---
tools/perf/builtin-c2c.c | 31 +++++++++++++++++++++++++++++++
1 file changed, 31 insertions(+)

diff --git a/tools/perf/builtin-c2c.c b/tools/perf/builtin-c2c.c
index 44a85679a704..c271261fcaf1 100644
--- a/tools/perf/builtin-c2c.c
+++ b/tools/perf/builtin-c2c.c
@@ -1637,6 +1637,23 @@ static int resort_cl_cb(struct hist_entry *he)
c2c_hists = c2c_he->hists;

if (c2c_hists) {
+ c2c_hists__reinit(c2c_hists,
+ "percent_rmt_hitm,"
+ "percent_lcl_hitm,"
+ "percent_stores_l1hit,"
+ "percent_stores_l1miss,"
+ "offset,"
+ "pid,"
+ "tid,"
+ "mean_rmt,"
+ "mean_lcl,"
+ "mean_load,"
+ "cpucnt,"
+ "symbol,"
+ "dso,"
+ "node",
+ "offset,rmt_hitm,lcl_hitm");
+
hists__collapse_resort(&c2c_hists->hists, NULL);
hists__output_resort_cb(&c2c_hists->hists, NULL, filter_cb);
}
@@ -1768,6 +1785,20 @@ static int perf_c2c__report(int argc, const char **argv)
goto out_session;
}

+ c2c_hists__reinit(&c2c.hists,
+ "dcacheline,"
+ "tot_recs,"
+ "percent_hitm,"
+ "tot_hitm,lcl_hitm,rmt_hitm,"
+ "stores,stores_l1hit,stores_l1miss,"
+ "dram_lcl,dram_rmt,"
+ "ld_llcmiss,"
+ "tot_loads,"
+ "ld_fbhit,ld_l1hit,ld_l2hit,"
+ "ld_lclhit,ld_rmthit",
+ "rmt_hitm"
+ );
+
ui_progress__init(&prog, c2c.hists.hists.nr_entries, "Sorting...");

hists__collapse_resort(&c2c.hists.hists, NULL);
--
2.7.4