The total stores is displayed under the metrics "Store Reference", to
output the same format with total records and all loads, extract the
total stores number as a standalone metrics "Total Stores".

After this patch, the tool shows the summary numbers ("Total records",
"Total loads", "Total Stores") in the unified form.

Before:

  #        ----------- Cacheline ----------      Tot  ----- LLC Load Hitm ----- 
   Total    Total  ---- Store Reference ----  --- Load Dram ----      LLC  
----- Core Load Hit -----  -- LLC Load Hit --
  # Index             Address  Node  PA cnt     Hitm    Total      Lcl      Rmt 
 records    Loads    Total    L1Hit   L1Miss       Lcl       Rmt  Ld Miss       
FB       L1       L2       Llc       Rmt
  # .....  ..................  ....  ......  .......  .......  .......  ....... 
 .......  .......  .......  .......  .......  ........  ........  .......  
.......  .......  .......  ........  ........
  #
        0      0x55f07d580100     0    1499   85.89%      481      481        0 
    7243     3879     3364     2599      765         0         0        0      
548     2615       66       169         0
        1      0x55f07d580080     0       1   13.93%       78       78        0 
     664      664        0        0        0         0         0        0      
187      361       27        11         0
        2      0x55f07d5800c0     0       1    0.18%        1        1        0 
     405      405        0        0        0         0         0        0      
131        0       10       263         0

After:

  #        ----------- Cacheline ----------      Tot  ----- LLC Load Hitm ----- 
   Total    Total    Total  ---- Stores ----  --- Load Dram ----      LLC  
----- Core Load Hit -----  -- LLC Load Hit --
  # Index             Address  Node  PA cnt     Hitm    Total      Lcl      Rmt 
 records    Loads   Stores    L1Hit   L1Miss       Lcl       Rmt  Ld Miss       
FB       L1       L2       Llc       Rmt
  # .....  ..................  ....  ......  .......  .......  .......  ....... 
 .......  .......  .......  .......  .......  ........  ........  .......  
.......  .......  .......  ........  ........
  #
        0      0x55f07d580100     0    1499   85.89%      481      481        0 
    7243     3879     3364     2599      765         0         0        0      
548     2615       66       169         0
        1      0x55f07d580080     0       1   13.93%       78       78        0 
     664      664        0        0        0         0         0        0      
187      361       27        11         0
        2      0x55f07d5800c0     0       1    0.18%        1        1        0 
     405      405        0        0        0         0         0        0      
131        0       10       263         0

Signed-off-by: Leo Yan <leo....@linaro.org>
---
 tools/perf/builtin-c2c.c | 13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)

diff --git a/tools/perf/builtin-c2c.c b/tools/perf/builtin-c2c.c
index e602b7891ce9..a2ad24799aea 100644
--- a/tools/perf/builtin-c2c.c
+++ b/tools/perf/builtin-c2c.c
@@ -1367,16 +1367,16 @@ static struct c2c_dimension dim_cl_lcl_hitm = {
        .width          = 7,
 };
 
-static struct c2c_dimension dim_stores = {
-       .header         = HEADER_SPAN("---- Store Reference ----", "Total", 2),
-       .name           = "stores",
+static struct c2c_dimension dim_tot_stores = {
+       .header         = HEADER_BOTH("Total", "Stores"),
+       .name           = "tot_stores",
        .cmp            = store_cmp,
        .entry          = store_entry,
        .width          = 7,
 };
 
 static struct c2c_dimension dim_stores_l1hit = {
-       .header         = HEADER_SPAN_LOW("L1Hit"),
+       .header         = HEADER_SPAN("---- Stores ----", "L1Hit", 1),
        .name           = "stores_l1hit",
        .cmp            = st_l1hit_cmp,
        .entry          = st_l1hit_entry,
@@ -1648,7 +1648,7 @@ static struct c2c_dimension *dimensions[] = {
        &dim_rmt_hitm,
        &dim_cl_lcl_hitm,
        &dim_cl_rmt_hitm,
-       &dim_stores,
+       &dim_tot_stores,
        &dim_stores_l1hit,
        &dim_stores_l1miss,
        &dim_cl_stores_l1hit,
@@ -2850,7 +2850,8 @@ static int perf_c2c__report(int argc, const char **argv)
                        "tot_hitm,lcl_hitm,rmt_hitm,"
                        "tot_recs,"
                        "tot_loads,"
-                       "stores,stores_l1hit,stores_l1miss,"
+                       "tot_stores,"
+                       "stores_l1hit,stores_l1miss,"
                        "dram_lcl,dram_rmt,"
                        "ld_llcmiss,"
                        "ld_fbhit,ld_l1hit,ld_l2hit,"
-- 
2.17.1

Reply via email to