linux-perf-users.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v1 1/2] perf test attr: Update no event/metric expectations
@ 2023-05-17 22:57 Ian Rogers
  2023-05-17 22:57 ` [PATCH v1 2/2] perf test attr: Fix deprecation warning Ian Rogers
                   ` (2 more replies)
  0 siblings, 3 replies; 14+ messages in thread
From: Ian Rogers @ 2023-05-17 22:57 UTC (permalink / raw)
  To: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo,
	Mark Rutland, Alexander Shishkin, Jiri Olsa, Namhyung Kim,
	Ian Rogers, Adrian Hunter, James Clark, Thomas Richter,
	linux-perf-users, linux-kernel, Kan Liang

Previously hard coded events/metrics were used, update for the use of
the TopdownL1 json metric group.

Fixes: 94b1a603fca7 ("perf stat: Add TopdownL1 metric as a default if present")
Signed-off-by: Ian Rogers <irogers@google.com>
---
 tools/perf/tests/attr/base-stat            |   2 +-
 tools/perf/tests/attr/test-stat-default    |  80 ++++++++-----
 tools/perf/tests/attr/test-stat-detailed-1 |  95 +++++++++------
 tools/perf/tests/attr/test-stat-detailed-2 | 119 +++++++++++--------
 tools/perf/tests/attr/test-stat-detailed-3 | 127 ++++++++++++---------
 5 files changed, 249 insertions(+), 174 deletions(-)

diff --git a/tools/perf/tests/attr/base-stat b/tools/perf/tests/attr/base-stat
index a21fb65bc012..fccd8ec4d1b0 100644
--- a/tools/perf/tests/attr/base-stat
+++ b/tools/perf/tests/attr/base-stat
@@ -16,7 +16,7 @@ pinned=0
 exclusive=0
 exclude_user=0
 exclude_kernel=0|1
-exclude_hv=0
+exclude_hv=0|1
 exclude_idle=0
 mmap=0
 comm=0
diff --git a/tools/perf/tests/attr/test-stat-default b/tools/perf/tests/attr/test-stat-default
index d8ea6a88163f..a1e2da0a9a6d 100644
--- a/tools/perf/tests/attr/test-stat-default
+++ b/tools/perf/tests/attr/test-stat-default
@@ -40,7 +40,6 @@ fd=6
 type=0
 config=7
 optional=1
-
 # PERF_TYPE_HARDWARE / PERF_COUNT_HW_STALLED_CYCLES_BACKEND
 [event7:base-stat]
 fd=7
@@ -89,79 +88,98 @@ enable_on_exec=0
 read_format=15
 optional=1
 
-# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
+# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
 [event13:base-stat]
 fd=13
 group_fd=11
 type=4
-config=33024
+config=33280
 disabled=0
 enable_on_exec=0
 read_format=15
 optional=1
 
-# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
+# PERF_TYPE_RAW / topdown-be-bound (0x8300)
 [event14:base-stat]
 fd=14
 group_fd=11
 type=4
-config=33280
+config=33536
 disabled=0
 enable_on_exec=0
 read_format=15
 optional=1
 
-# PERF_TYPE_RAW / topdown-be-bound (0x8300)
+# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
 [event15:base-stat]
 fd=15
 group_fd=11
 type=4
-config=33536
+config=33024
 disabled=0
 enable_on_exec=0
 read_format=15
 optional=1
 
-# PERF_TYPE_RAW / topdown-heavy-ops (0x8400)
+# PERF_TYPE_RAW / INT_MISC.UOP_DROPPING
 [event16:base-stat]
 fd=16
-group_fd=11
 type=4
-config=33792
-disabled=0
-enable_on_exec=0
-read_format=15
+config=4109
 optional=1
 
-# PERF_TYPE_RAW / topdown-br-mispredict (0x8500)
+# PERF_TYPE_RAW / cpu/INT_MISC.RECOVERY_CYCLES,cmask=1,edge/
 [event17:base-stat]
 fd=17
-group_fd=11
 type=4
-config=34048
-disabled=0
-enable_on_exec=0
-read_format=15
+config=17039629
 optional=1
 
-# PERF_TYPE_RAW / topdown-fetch-lat (0x8600)
+# PERF_TYPE_RAW / CPU_CLK_UNHALTED.THREAD
 [event18:base-stat]
 fd=18
-group_fd=11
 type=4
-config=34304
-disabled=0
-enable_on_exec=0
-read_format=15
+config=60
 optional=1
 
-# PERF_TYPE_RAW / topdown-mem-bound (0x8700)
+# PERF_TYPE_RAW / INT_MISC.RECOVERY_CYCLES_ANY
 [event19:base-stat]
 fd=19
-group_fd=11
 type=4
-config=34560
-disabled=0
-enable_on_exec=0
-read_format=15
+config=2097421
+optional=1
+
+# PERF_TYPE_RAW / CPU_CLK_UNHALTED.REF_XCLK
+[event20:base-stat]
+fd=20
+type=4
+config=316
+optional=1
+
+# PERF_TYPE_RAW / IDQ_UOPS_NOT_DELIVERED.CORE
+[event21:base-stat]
+fd=21
+type=4
+config=412
+optional=1
+
+# PERF_TYPE_RAW / CPU_CLK_UNHALTED.ONE_THREAD_ACTIVE
+[event22:base-stat]
+fd=22
+type=4
+config=572
+optional=1
+
+# PERF_TYPE_RAW / UOPS_RETIRED.RETIRE_SLOTS
+[event23:base-stat]
+fd=23
+type=4
+config=706
+optional=1
+
+# PERF_TYPE_RAW / UOPS_ISSUED.ANY
+[event24:base-stat]
+fd=24
+type=4
+config=270
 optional=1
diff --git a/tools/perf/tests/attr/test-stat-detailed-1 b/tools/perf/tests/attr/test-stat-detailed-1
index b656ab93c5bf..1c52cb05c900 100644
--- a/tools/perf/tests/attr/test-stat-detailed-1
+++ b/tools/perf/tests/attr/test-stat-detailed-1
@@ -90,89 +90,108 @@ enable_on_exec=0
 read_format=15
 optional=1
 
-# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
+# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
 [event13:base-stat]
 fd=13
 group_fd=11
 type=4
-config=33024
+config=33280
 disabled=0
 enable_on_exec=0
 read_format=15
 optional=1
 
-# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
+# PERF_TYPE_RAW / topdown-be-bound (0x8300)
 [event14:base-stat]
 fd=14
 group_fd=11
 type=4
-config=33280
+config=33536
 disabled=0
 enable_on_exec=0
 read_format=15
 optional=1
 
-# PERF_TYPE_RAW / topdown-be-bound (0x8300)
+# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
 [event15:base-stat]
 fd=15
 group_fd=11
 type=4
-config=33536
+config=33024
 disabled=0
 enable_on_exec=0
 read_format=15
 optional=1
 
-# PERF_TYPE_RAW / topdown-heavy-ops (0x8400)
+# PERF_TYPE_RAW / INT_MISC.UOP_DROPPING
 [event16:base-stat]
 fd=16
-group_fd=11
 type=4
-config=33792
-disabled=0
-enable_on_exec=0
-read_format=15
+config=4109
 optional=1
 
-# PERF_TYPE_RAW / topdown-br-mispredict (0x8500)
+# PERF_TYPE_RAW / cpu/INT_MISC.RECOVERY_CYCLES,cmask=1,edge/
 [event17:base-stat]
 fd=17
-group_fd=11
 type=4
-config=34048
-disabled=0
-enable_on_exec=0
-read_format=15
+config=17039629
 optional=1
 
-# PERF_TYPE_RAW / topdown-fetch-lat (0x8600)
+# PERF_TYPE_RAW / CPU_CLK_UNHALTED.THREAD
 [event18:base-stat]
 fd=18
-group_fd=11
 type=4
-config=34304
-disabled=0
-enable_on_exec=0
-read_format=15
+config=60
 optional=1
 
-# PERF_TYPE_RAW / topdown-mem-bound (0x8700)
+# PERF_TYPE_RAW / INT_MISC.RECOVERY_CYCLES_ANY
 [event19:base-stat]
 fd=19
-group_fd=11
 type=4
-config=34560
-disabled=0
-enable_on_exec=0
-read_format=15
+config=2097421
+optional=1
+
+# PERF_TYPE_RAW / CPU_CLK_UNHALTED.REF_XCLK
+[event20:base-stat]
+fd=20
+type=4
+config=316
+optional=1
+
+# PERF_TYPE_RAW / IDQ_UOPS_NOT_DELIVERED.CORE
+[event21:base-stat]
+fd=21
+type=4
+config=412
+optional=1
+
+# PERF_TYPE_RAW / CPU_CLK_UNHALTED.ONE_THREAD_ACTIVE
+[event22:base-stat]
+fd=22
+type=4
+config=572
+optional=1
+
+# PERF_TYPE_RAW / UOPS_RETIRED.RETIRE_SLOTS
+[event23:base-stat]
+fd=23
+type=4
+config=706
+optional=1
+
+# PERF_TYPE_RAW / UOPS_ISSUED.ANY
+[event24:base-stat]
+fd=24
+type=4
+config=270
 optional=1
 
 # PERF_TYPE_HW_CACHE /
 #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
 # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
 # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
-[event20:base-stat]
-fd=20
+[event25:base-stat]
+fd=25
 type=3
 config=0
 optional=1
@@ -181,8 +200,8 @@ optional=1
 #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
 # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
 # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
-[event21:base-stat]
-fd=21
+[event26:base-stat]
+fd=26
 type=3
 config=65536
 optional=1
@@ -191,8 +210,8 @@ optional=1
 #  PERF_COUNT_HW_CACHE_LL                 <<  0  |
 # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
 # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
-[event22:base-stat]
-fd=22
+[event27:base-stat]
+fd=27
 type=3
 config=2
 optional=1
@@ -201,8 +220,8 @@ optional=1
 #  PERF_COUNT_HW_CACHE_LL                 <<  0  |
 # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
 # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
-[event23:base-stat]
-fd=23
+[event28:base-stat]
+fd=28
 type=3
 config=65538
 optional=1
diff --git a/tools/perf/tests/attr/test-stat-detailed-2 b/tools/perf/tests/attr/test-stat-detailed-2
index 97625090a1c4..7e961d24a885 100644
--- a/tools/perf/tests/attr/test-stat-detailed-2
+++ b/tools/perf/tests/attr/test-stat-detailed-2
@@ -90,89 +90,108 @@ enable_on_exec=0
 read_format=15
 optional=1
 
-# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
+# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
 [event13:base-stat]
 fd=13
 group_fd=11
 type=4
-config=33024
+config=33280
 disabled=0
 enable_on_exec=0
 read_format=15
 optional=1
 
-# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
+# PERF_TYPE_RAW / topdown-be-bound (0x8300)
 [event14:base-stat]
 fd=14
 group_fd=11
 type=4
-config=33280
+config=33536
 disabled=0
 enable_on_exec=0
 read_format=15
 optional=1
 
-# PERF_TYPE_RAW / topdown-be-bound (0x8300)
+# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
 [event15:base-stat]
 fd=15
 group_fd=11
 type=4
-config=33536
+config=33024
 disabled=0
 enable_on_exec=0
 read_format=15
 optional=1
 
-# PERF_TYPE_RAW / topdown-heavy-ops (0x8400)
+# PERF_TYPE_RAW / INT_MISC.UOP_DROPPING
 [event16:base-stat]
 fd=16
-group_fd=11
 type=4
-config=33792
-disabled=0
-enable_on_exec=0
-read_format=15
+config=4109
 optional=1
 
-# PERF_TYPE_RAW / topdown-br-mispredict (0x8500)
+# PERF_TYPE_RAW / cpu/INT_MISC.RECOVERY_CYCLES,cmask=1,edge/
 [event17:base-stat]
 fd=17
-group_fd=11
 type=4
-config=34048
-disabled=0
-enable_on_exec=0
-read_format=15
+config=17039629
 optional=1
 
-# PERF_TYPE_RAW / topdown-fetch-lat (0x8600)
+# PERF_TYPE_RAW / CPU_CLK_UNHALTED.THREAD
 [event18:base-stat]
 fd=18
-group_fd=11
 type=4
-config=34304
-disabled=0
-enable_on_exec=0
-read_format=15
+config=60
 optional=1
 
-# PERF_TYPE_RAW / topdown-mem-bound (0x8700)
+# PERF_TYPE_RAW / INT_MISC.RECOVERY_CYCLES_ANY
 [event19:base-stat]
 fd=19
-group_fd=11
 type=4
-config=34560
-disabled=0
-enable_on_exec=0
-read_format=15
+config=2097421
+optional=1
+
+# PERF_TYPE_RAW / CPU_CLK_UNHALTED.REF_XCLK
+[event20:base-stat]
+fd=20
+type=4
+config=316
+optional=1
+
+# PERF_TYPE_RAW / IDQ_UOPS_NOT_DELIVERED.CORE
+[event21:base-stat]
+fd=21
+type=4
+config=412
+optional=1
+
+# PERF_TYPE_RAW / CPU_CLK_UNHALTED.ONE_THREAD_ACTIVE
+[event22:base-stat]
+fd=22
+type=4
+config=572
+optional=1
+
+# PERF_TYPE_RAW / UOPS_RETIRED.RETIRE_SLOTS
+[event23:base-stat]
+fd=23
+type=4
+config=706
+optional=1
+
+# PERF_TYPE_RAW / UOPS_ISSUED.ANY
+[event24:base-stat]
+fd=24
+type=4
+config=270
 optional=1
 
 # PERF_TYPE_HW_CACHE /
 #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
 # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
 # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
-[event20:base-stat]
-fd=20
+[event25:base-stat]
+fd=25
 type=3
 config=0
 optional=1
@@ -181,8 +200,8 @@ optional=1
 #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
 # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
 # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
-[event21:base-stat]
-fd=21
+[event26:base-stat]
+fd=26
 type=3
 config=65536
 optional=1
@@ -191,8 +210,8 @@ optional=1
 #  PERF_COUNT_HW_CACHE_LL                 <<  0  |
 # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
 # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
-[event22:base-stat]
-fd=22
+[event27:base-stat]
+fd=27
 type=3
 config=2
 optional=1
@@ -201,8 +220,8 @@ optional=1
 #  PERF_COUNT_HW_CACHE_LL                 <<  0  |
 # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
 # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
-[event23:base-stat]
-fd=23
+[event28:base-stat]
+fd=28
 type=3
 config=65538
 optional=1
@@ -211,8 +230,8 @@ optional=1
 #  PERF_COUNT_HW_CACHE_L1I                <<  0  |
 # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
 # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
-[event24:base-stat]
-fd=24
+[event29:base-stat]
+fd=29
 type=3
 config=1
 optional=1
@@ -221,8 +240,8 @@ optional=1
 #  PERF_COUNT_HW_CACHE_L1I                <<  0  |
 # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
 # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
-[event25:base-stat]
-fd=25
+[event30:base-stat]
+fd=30
 type=3
 config=65537
 optional=1
@@ -231,8 +250,8 @@ optional=1
 #  PERF_COUNT_HW_CACHE_DTLB               <<  0  |
 # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
 # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
-[event26:base-stat]
-fd=26
+[event31:base-stat]
+fd=31
 type=3
 config=3
 optional=1
@@ -241,8 +260,8 @@ optional=1
 #  PERF_COUNT_HW_CACHE_DTLB               <<  0  |
 # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
 # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
-[event27:base-stat]
-fd=27
+[event32:base-stat]
+fd=32
 type=3
 config=65539
 optional=1
@@ -251,8 +270,8 @@ optional=1
 #  PERF_COUNT_HW_CACHE_ITLB               <<  0  |
 # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
 # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
-[event28:base-stat]
-fd=28
+[event33:base-stat]
+fd=33
 type=3
 config=4
 optional=1
@@ -261,8 +280,8 @@ optional=1
 #  PERF_COUNT_HW_CACHE_ITLB               <<  0  |
 # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
 # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
-[event29:base-stat]
-fd=29
+[event34:base-stat]
+fd=34
 type=3
 config=65540
 optional=1
diff --git a/tools/perf/tests/attr/test-stat-detailed-3 b/tools/perf/tests/attr/test-stat-detailed-3
index d555042e3fbf..e50535f45977 100644
--- a/tools/perf/tests/attr/test-stat-detailed-3
+++ b/tools/perf/tests/attr/test-stat-detailed-3
@@ -90,89 +90,108 @@ enable_on_exec=0
 read_format=15
 optional=1
 
-# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
+# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
 [event13:base-stat]
 fd=13
 group_fd=11
 type=4
-config=33024
+config=33280
 disabled=0
 enable_on_exec=0
 read_format=15
 optional=1
 
-# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
+# PERF_TYPE_RAW / topdown-be-bound (0x8300)
 [event14:base-stat]
 fd=14
 group_fd=11
 type=4
-config=33280
+config=33536
 disabled=0
 enable_on_exec=0
 read_format=15
 optional=1
 
-# PERF_TYPE_RAW / topdown-be-bound (0x8300)
+# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
 [event15:base-stat]
 fd=15
 group_fd=11
 type=4
-config=33536
+config=33024
 disabled=0
 enable_on_exec=0
 read_format=15
 optional=1
 
-# PERF_TYPE_RAW / topdown-heavy-ops (0x8400)
+# PERF_TYPE_RAW / INT_MISC.UOP_DROPPING
 [event16:base-stat]
 fd=16
-group_fd=11
 type=4
-config=33792
-disabled=0
-enable_on_exec=0
-read_format=15
+config=4109
 optional=1
 
-# PERF_TYPE_RAW / topdown-br-mispredict (0x8500)
+# PERF_TYPE_RAW / cpu/INT_MISC.RECOVERY_CYCLES,cmask=1,edge/
 [event17:base-stat]
 fd=17
-group_fd=11
 type=4
-config=34048
-disabled=0
-enable_on_exec=0
-read_format=15
+config=17039629
 optional=1
 
-# PERF_TYPE_RAW / topdown-fetch-lat (0x8600)
+# PERF_TYPE_RAW / CPU_CLK_UNHALTED.THREAD
 [event18:base-stat]
 fd=18
-group_fd=11
 type=4
-config=34304
-disabled=0
-enable_on_exec=0
-read_format=15
+config=60
 optional=1
 
-# PERF_TYPE_RAW / topdown-mem-bound (0x8700)
+# PERF_TYPE_RAW / INT_MISC.RECOVERY_CYCLES_ANY
 [event19:base-stat]
 fd=19
-group_fd=11
 type=4
-config=34560
-disabled=0
-enable_on_exec=0
-read_format=15
+config=2097421
+optional=1
+
+# PERF_TYPE_RAW / CPU_CLK_UNHALTED.REF_XCLK
+[event20:base-stat]
+fd=20
+type=4
+config=316
+optional=1
+
+# PERF_TYPE_RAW / IDQ_UOPS_NOT_DELIVERED.CORE
+[event21:base-stat]
+fd=21
+type=4
+config=412
+optional=1
+
+# PERF_TYPE_RAW / CPU_CLK_UNHALTED.ONE_THREAD_ACTIVE
+[event22:base-stat]
+fd=22
+type=4
+config=572
+optional=1
+
+# PERF_TYPE_RAW / UOPS_RETIRED.RETIRE_SLOTS
+[event23:base-stat]
+fd=23
+type=4
+config=706
+optional=1
+
+# PERF_TYPE_RAW / UOPS_ISSUED.ANY
+[event24:base-stat]
+fd=24
+type=4
+config=270
 optional=1
 
 # PERF_TYPE_HW_CACHE /
 #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
 # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
 # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
-[event20:base-stat]
-fd=20
+[event25:base-stat]
+fd=25
 type=3
 config=0
 optional=1
@@ -181,8 +200,8 @@ optional=1
 #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
 # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
 # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
-[event21:base-stat]
-fd=21
+[event26:base-stat]
+fd=26
 type=3
 config=65536
 optional=1
@@ -191,8 +210,8 @@ optional=1
 #  PERF_COUNT_HW_CACHE_LL                 <<  0  |
 # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
 # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
-[event22:base-stat]
-fd=22
+[event27:base-stat]
+fd=27
 type=3
 config=2
 optional=1
@@ -201,8 +220,8 @@ optional=1
 #  PERF_COUNT_HW_CACHE_LL                 <<  0  |
 # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
 # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
-[event23:base-stat]
-fd=23
+[event28:base-stat]
+fd=28
 type=3
 config=65538
 optional=1
@@ -211,8 +230,8 @@ optional=1
 #  PERF_COUNT_HW_CACHE_L1I                <<  0  |
 # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
 # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
-[event24:base-stat]
-fd=24
+[event29:base-stat]
+fd=29
 type=3
 config=1
 optional=1
@@ -221,8 +240,8 @@ optional=1
 #  PERF_COUNT_HW_CACHE_L1I                <<  0  |
 # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
 # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
-[event25:base-stat]
-fd=25
+[event30:base-stat]
+fd=30
 type=3
 config=65537
 optional=1
@@ -231,8 +250,8 @@ optional=1
 #  PERF_COUNT_HW_CACHE_DTLB               <<  0  |
 # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
 # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
-[event26:base-stat]
-fd=26
+[event31:base-stat]
+fd=31
 type=3
 config=3
 optional=1
@@ -241,8 +260,8 @@ optional=1
 #  PERF_COUNT_HW_CACHE_DTLB               <<  0  |
 # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
 # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
-[event27:base-stat]
-fd=27
+[event32:base-stat]
+fd=32
 type=3
 config=65539
 optional=1
@@ -251,8 +270,8 @@ optional=1
 #  PERF_COUNT_HW_CACHE_ITLB               <<  0  |
 # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
 # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
-[event28:base-stat]
-fd=28
+[event33:base-stat]
+fd=33
 type=3
 config=4
 optional=1
@@ -261,8 +280,8 @@ optional=1
 #  PERF_COUNT_HW_CACHE_ITLB               <<  0  |
 # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
 # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
-[event29:base-stat]
-fd=29
+[event34:base-stat]
+fd=34
 type=3
 config=65540
 optional=1
@@ -271,8 +290,8 @@ optional=1
 #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
 # (PERF_COUNT_HW_CACHE_OP_PREFETCH        <<  8) |
 # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
-[event30:base-stat]
-fd=30
+[event35:base-stat]
+fd=35
 type=3
 config=512
 optional=1
@@ -281,8 +300,8 @@ optional=1
 #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
 # (PERF_COUNT_HW_CACHE_OP_PREFETCH        <<  8) |
 # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
-[event31:base-stat]
-fd=31
+[event36:base-stat]
+fd=36
 type=3
 config=66048
 optional=1
-- 
2.40.1.606.ga4b1b128d6-goog


^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [PATCH v1 2/2] perf test attr: Fix deprecation warning
  2023-05-17 22:57 [PATCH v1 1/2] perf test attr: Update no event/metric expectations Ian Rogers
@ 2023-05-17 22:57 ` Ian Rogers
  2023-05-18  7:23   ` James Clark
  2023-05-18  7:50 ` [PATCH v1 1/2] perf test attr: Update no event/metric expectations James Clark
  2023-05-18 13:01 ` Liang, Kan
  2 siblings, 1 reply; 14+ messages in thread
From: Ian Rogers @ 2023-05-17 22:57 UTC (permalink / raw)
  To: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo,
	Mark Rutland, Alexander Shishkin, Jiri Olsa, Namhyung Kim,
	Ian Rogers, Adrian Hunter, James Clark, Thomas Richter,
	linux-perf-users, linux-kernel, Kan Liang

Address the warning:
```
tests/attr.py:155: DeprecationWarning: The SafeConfigParser class has
  been renamed to ConfigParser in Python 3.2. This alias will be
  removed in Python 3.12. Use ConfigParser directly instead.
parser = configparser.SafeConfigParser()
```
by removing the word 'Safe'.

Signed-off-by: Ian Rogers <irogers@google.com>
---
 tools/perf/tests/attr.py | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/tools/perf/tests/attr.py b/tools/perf/tests/attr.py
index ccfef861e931..e890c261ad26 100644
--- a/tools/perf/tests/attr.py
+++ b/tools/perf/tests/attr.py
@@ -152,7 +152,7 @@ def parse_version(version):
 #   - expected values assignments
 class Test(object):
     def __init__(self, path, options):
-        parser = configparser.SafeConfigParser()
+        parser = configparser.ConfigParser()
         parser.read(path)
 
         log.warning("running '%s'" % path)
@@ -247,7 +247,7 @@ class Test(object):
         return True
 
     def load_events(self, path, events):
-        parser_event = configparser.SafeConfigParser()
+        parser_event = configparser.ConfigParser()
         parser_event.read(path)
 
         # The event record section header contains 'event' word,
@@ -261,7 +261,7 @@ class Test(object):
             # Read parent event if there's any
             if (':' in section):
                 base = section[section.index(':') + 1:]
-                parser_base = configparser.SafeConfigParser()
+                parser_base = configparser.ConfigParser()
                 parser_base.read(self.test_dir + '/' + base)
                 base_items = parser_base.items('event')
 
-- 
2.40.1.606.ga4b1b128d6-goog


^ permalink raw reply related	[flat|nested] 14+ messages in thread

* Re: [PATCH v1 2/2] perf test attr: Fix deprecation warning
  2023-05-17 22:57 ` [PATCH v1 2/2] perf test attr: Fix deprecation warning Ian Rogers
@ 2023-05-18  7:23   ` James Clark
  0 siblings, 0 replies; 14+ messages in thread
From: James Clark @ 2023-05-18  7:23 UTC (permalink / raw)
  To: Ian Rogers
  Cc: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo,
	Mark Rutland, Alexander Shishkin, Jiri Olsa, Namhyung Kim,
	Adrian Hunter, Thomas Richter, linux-perf-users, linux-kernel,
	Kan Liang



On 17/05/2023 23:57, Ian Rogers wrote:
> Address the warning:
> ```
> tests/attr.py:155: DeprecationWarning: The SafeConfigParser class has
>   been renamed to ConfigParser in Python 3.2. This alias will be
>   removed in Python 3.12. Use ConfigParser directly instead.
> parser = configparser.SafeConfigParser()
> ```
> by removing the word 'Safe'.
> 
> Signed-off-by: Ian Rogers <irogers@google.com>
> ---
>  tools/perf/tests/attr.py | 6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git a/tools/perf/tests/attr.py b/tools/perf/tests/attr.py
> index ccfef861e931..e890c261ad26 100644
> --- a/tools/perf/tests/attr.py
> +++ b/tools/perf/tests/attr.py
> @@ -152,7 +152,7 @@ def parse_version(version):
>  #   - expected values assignments
>  class Test(object):
>      def __init__(self, path, options):
> -        parser = configparser.SafeConfigParser()
> +        parser = configparser.ConfigParser()
>          parser.read(path)
>  
>          log.warning("running '%s'" % path)
> @@ -247,7 +247,7 @@ class Test(object):
>          return True
>  
>      def load_events(self, path, events):
> -        parser_event = configparser.SafeConfigParser()
> +        parser_event = configparser.ConfigParser()
>          parser_event.read(path)
>  
>          # The event record section header contains 'event' word,
> @@ -261,7 +261,7 @@ class Test(object):
>              # Read parent event if there's any
>              if (':' in section):
>                  base = section[section.index(':') + 1:]
> -                parser_base = configparser.SafeConfigParser()
> +                parser_base = configparser.ConfigParser()
>                  parser_base.read(self.test_dir + '/' + base)
>                  base_items = parser_base.items('event')
>  

Reviewed-by: James Clark <james.clark@arm.com>

I thought I also did this a while ago but it must have gotten lost or I
didn't send it.

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH v1 1/2] perf test attr: Update no event/metric expectations
  2023-05-17 22:57 [PATCH v1 1/2] perf test attr: Update no event/metric expectations Ian Rogers
  2023-05-17 22:57 ` [PATCH v1 2/2] perf test attr: Fix deprecation warning Ian Rogers
@ 2023-05-18  7:50 ` James Clark
  2023-05-18 12:20   ` Arnaldo Carvalho de Melo
  2023-05-18 13:01 ` Liang, Kan
  2 siblings, 1 reply; 14+ messages in thread
From: James Clark @ 2023-05-18  7:50 UTC (permalink / raw)
  To: Ian Rogers
  Cc: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo,
	Mark Rutland, Alexander Shishkin, Jiri Olsa, Namhyung Kim,
	Adrian Hunter, Thomas Richter, linux-perf-users, linux-kernel,
	Kan Liang



On 17/05/2023 23:57, Ian Rogers wrote:
> Previously hard coded events/metrics were used, update for the use of
> the TopdownL1 json metric group.
> 
> Fixes: 94b1a603fca7 ("perf stat: Add TopdownL1 metric as a default if present")
> Signed-off-by: Ian Rogers <irogers@google.com>
> ---
>  tools/perf/tests/attr/base-stat            |   2 +-
>  tools/perf/tests/attr/test-stat-default    |  80 ++++++++-----
>  tools/perf/tests/attr/test-stat-detailed-1 |  95 +++++++++------
>  tools/perf/tests/attr/test-stat-detailed-2 | 119 +++++++++++--------
>  tools/perf/tests/attr/test-stat-detailed-3 | 127 ++++++++++++---------
>  5 files changed, 249 insertions(+), 174 deletions(-)
> 

Reviewed-by: James Clark <james.clark@arm.com>

> diff --git a/tools/perf/tests/attr/base-stat b/tools/perf/tests/attr/base-stat
> index a21fb65bc012..fccd8ec4d1b0 100644
> --- a/tools/perf/tests/attr/base-stat
> +++ b/tools/perf/tests/attr/base-stat
> @@ -16,7 +16,7 @@ pinned=0
>  exclusive=0
>  exclude_user=0
>  exclude_kernel=0|1
> -exclude_hv=0
> +exclude_hv=0|1
>  exclude_idle=0
>  mmap=0
>  comm=0
> diff --git a/tools/perf/tests/attr/test-stat-default b/tools/perf/tests/attr/test-stat-default
> index d8ea6a88163f..a1e2da0a9a6d 100644
> --- a/tools/perf/tests/attr/test-stat-default
> +++ b/tools/perf/tests/attr/test-stat-default
> @@ -40,7 +40,6 @@ fd=6
>  type=0
>  config=7
>  optional=1
> -
>  # PERF_TYPE_HARDWARE / PERF_COUNT_HW_STALLED_CYCLES_BACKEND
>  [event7:base-stat]
>  fd=7
> @@ -89,79 +88,98 @@ enable_on_exec=0
>  read_format=15
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
> +# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
>  [event13:base-stat]
>  fd=13
>  group_fd=11
>  type=4
> -config=33024
> +config=33280
>  disabled=0
>  enable_on_exec=0
>  read_format=15
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
> +# PERF_TYPE_RAW / topdown-be-bound (0x8300)
>  [event14:base-stat]
>  fd=14
>  group_fd=11
>  type=4
> -config=33280
> +config=33536
>  disabled=0
>  enable_on_exec=0
>  read_format=15
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-be-bound (0x8300)
> +# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
>  [event15:base-stat]
>  fd=15
>  group_fd=11
>  type=4
> -config=33536
> +config=33024
>  disabled=0
>  enable_on_exec=0
>  read_format=15
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-heavy-ops (0x8400)
> +# PERF_TYPE_RAW / INT_MISC.UOP_DROPPING
>  [event16:base-stat]
>  fd=16
> -group_fd=11
>  type=4
> -config=33792
> -disabled=0
> -enable_on_exec=0
> -read_format=15
> +config=4109
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-br-mispredict (0x8500)
> +# PERF_TYPE_RAW / cpu/INT_MISC.RECOVERY_CYCLES,cmask=1,edge/
>  [event17:base-stat]
>  fd=17
> -group_fd=11
>  type=4
> -config=34048
> -disabled=0
> -enable_on_exec=0
> -read_format=15
> +config=17039629
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-fetch-lat (0x8600)
> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.THREAD
>  [event18:base-stat]
>  fd=18
> -group_fd=11
>  type=4
> -config=34304
> -disabled=0
> -enable_on_exec=0
> -read_format=15
> +config=60
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-mem-bound (0x8700)
> +# PERF_TYPE_RAW / INT_MISC.RECOVERY_CYCLES_ANY
>  [event19:base-stat]
>  fd=19
> -group_fd=11
>  type=4
> -config=34560
> -disabled=0
> -enable_on_exec=0
> -read_format=15
> +config=2097421
> +optional=1
> +
> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.REF_XCLK
> +[event20:base-stat]
> +fd=20
> +type=4
> +config=316
> +optional=1
> +
> +# PERF_TYPE_RAW / IDQ_UOPS_NOT_DELIVERED.CORE
> +[event21:base-stat]
> +fd=21
> +type=4
> +config=412
> +optional=1
> +
> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.ONE_THREAD_ACTIVE
> +[event22:base-stat]
> +fd=22
> +type=4
> +config=572
> +optional=1
> +
> +# PERF_TYPE_RAW / UOPS_RETIRED.RETIRE_SLOTS
> +[event23:base-stat]
> +fd=23
> +type=4
> +config=706
> +optional=1
> +
> +# PERF_TYPE_RAW / UOPS_ISSUED.ANY
> +[event24:base-stat]
> +fd=24
> +type=4
> +config=270
>  optional=1
> diff --git a/tools/perf/tests/attr/test-stat-detailed-1 b/tools/perf/tests/attr/test-stat-detailed-1
> index b656ab93c5bf..1c52cb05c900 100644
> --- a/tools/perf/tests/attr/test-stat-detailed-1
> +++ b/tools/perf/tests/attr/test-stat-detailed-1
> @@ -90,89 +90,108 @@ enable_on_exec=0
>  read_format=15
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
> +# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
>  [event13:base-stat]
>  fd=13
>  group_fd=11
>  type=4
> -config=33024
> +config=33280
>  disabled=0
>  enable_on_exec=0
>  read_format=15
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
> +# PERF_TYPE_RAW / topdown-be-bound (0x8300)
>  [event14:base-stat]
>  fd=14
>  group_fd=11
>  type=4
> -config=33280
> +config=33536
>  disabled=0
>  enable_on_exec=0
>  read_format=15
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-be-bound (0x8300)
> +# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
>  [event15:base-stat]
>  fd=15
>  group_fd=11
>  type=4
> -config=33536
> +config=33024
>  disabled=0
>  enable_on_exec=0
>  read_format=15
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-heavy-ops (0x8400)
> +# PERF_TYPE_RAW / INT_MISC.UOP_DROPPING
>  [event16:base-stat]
>  fd=16
> -group_fd=11
>  type=4
> -config=33792
> -disabled=0
> -enable_on_exec=0
> -read_format=15
> +config=4109
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-br-mispredict (0x8500)
> +# PERF_TYPE_RAW / cpu/INT_MISC.RECOVERY_CYCLES,cmask=1,edge/
>  [event17:base-stat]
>  fd=17
> -group_fd=11
>  type=4
> -config=34048
> -disabled=0
> -enable_on_exec=0
> -read_format=15
> +config=17039629
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-fetch-lat (0x8600)
> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.THREAD
>  [event18:base-stat]
>  fd=18
> -group_fd=11
>  type=4
> -config=34304
> -disabled=0
> -enable_on_exec=0
> -read_format=15
> +config=60
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-mem-bound (0x8700)
> +# PERF_TYPE_RAW / INT_MISC.RECOVERY_CYCLES_ANY
>  [event19:base-stat]
>  fd=19
> -group_fd=11
>  type=4
> -config=34560
> -disabled=0
> -enable_on_exec=0
> -read_format=15
> +config=2097421
> +optional=1
> +
> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.REF_XCLK
> +[event20:base-stat]
> +fd=20
> +type=4
> +config=316
> +optional=1
> +
> +# PERF_TYPE_RAW / IDQ_UOPS_NOT_DELIVERED.CORE
> +[event21:base-stat]
> +fd=21
> +type=4
> +config=412
> +optional=1
> +
> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.ONE_THREAD_ACTIVE
> +[event22:base-stat]
> +fd=22
> +type=4
> +config=572
> +optional=1
> +
> +# PERF_TYPE_RAW / UOPS_RETIRED.RETIRE_SLOTS
> +[event23:base-stat]
> +fd=23
> +type=4
> +config=706
> +optional=1
> +
> +# PERF_TYPE_RAW / UOPS_ISSUED.ANY
> +[event24:base-stat]
> +fd=24
> +type=4
> +config=270
>  optional=1
>  
>  # PERF_TYPE_HW_CACHE /
>  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> -[event20:base-stat]
> -fd=20
> +[event25:base-stat]
> +fd=25
>  type=3
>  config=0
>  optional=1
> @@ -181,8 +200,8 @@ optional=1
>  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> -[event21:base-stat]
> -fd=21
> +[event26:base-stat]
> +fd=26
>  type=3
>  config=65536
>  optional=1
> @@ -191,8 +210,8 @@ optional=1
>  #  PERF_COUNT_HW_CACHE_LL                 <<  0  |
>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> -[event22:base-stat]
> -fd=22
> +[event27:base-stat]
> +fd=27
>  type=3
>  config=2
>  optional=1
> @@ -201,8 +220,8 @@ optional=1
>  #  PERF_COUNT_HW_CACHE_LL                 <<  0  |
>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> -[event23:base-stat]
> -fd=23
> +[event28:base-stat]
> +fd=28
>  type=3
>  config=65538
>  optional=1
> diff --git a/tools/perf/tests/attr/test-stat-detailed-2 b/tools/perf/tests/attr/test-stat-detailed-2
> index 97625090a1c4..7e961d24a885 100644
> --- a/tools/perf/tests/attr/test-stat-detailed-2
> +++ b/tools/perf/tests/attr/test-stat-detailed-2
> @@ -90,89 +90,108 @@ enable_on_exec=0
>  read_format=15
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
> +# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
>  [event13:base-stat]
>  fd=13
>  group_fd=11
>  type=4
> -config=33024
> +config=33280
>  disabled=0
>  enable_on_exec=0
>  read_format=15
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
> +# PERF_TYPE_RAW / topdown-be-bound (0x8300)
>  [event14:base-stat]
>  fd=14
>  group_fd=11
>  type=4
> -config=33280
> +config=33536
>  disabled=0
>  enable_on_exec=0
>  read_format=15
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-be-bound (0x8300)
> +# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
>  [event15:base-stat]
>  fd=15
>  group_fd=11
>  type=4
> -config=33536
> +config=33024
>  disabled=0
>  enable_on_exec=0
>  read_format=15
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-heavy-ops (0x8400)
> +# PERF_TYPE_RAW / INT_MISC.UOP_DROPPING
>  [event16:base-stat]
>  fd=16
> -group_fd=11
>  type=4
> -config=33792
> -disabled=0
> -enable_on_exec=0
> -read_format=15
> +config=4109
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-br-mispredict (0x8500)
> +# PERF_TYPE_RAW / cpu/INT_MISC.RECOVERY_CYCLES,cmask=1,edge/
>  [event17:base-stat]
>  fd=17
> -group_fd=11
>  type=4
> -config=34048
> -disabled=0
> -enable_on_exec=0
> -read_format=15
> +config=17039629
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-fetch-lat (0x8600)
> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.THREAD
>  [event18:base-stat]
>  fd=18
> -group_fd=11
>  type=4
> -config=34304
> -disabled=0
> -enable_on_exec=0
> -read_format=15
> +config=60
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-mem-bound (0x8700)
> +# PERF_TYPE_RAW / INT_MISC.RECOVERY_CYCLES_ANY
>  [event19:base-stat]
>  fd=19
> -group_fd=11
>  type=4
> -config=34560
> -disabled=0
> -enable_on_exec=0
> -read_format=15
> +config=2097421
> +optional=1
> +
> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.REF_XCLK
> +[event20:base-stat]
> +fd=20
> +type=4
> +config=316
> +optional=1
> +
> +# PERF_TYPE_RAW / IDQ_UOPS_NOT_DELIVERED.CORE
> +[event21:base-stat]
> +fd=21
> +type=4
> +config=412
> +optional=1
> +
> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.ONE_THREAD_ACTIVE
> +[event22:base-stat]
> +fd=22
> +type=4
> +config=572
> +optional=1
> +
> +# PERF_TYPE_RAW / UOPS_RETIRED.RETIRE_SLOTS
> +[event23:base-stat]
> +fd=23
> +type=4
> +config=706
> +optional=1
> +
> +# PERF_TYPE_RAW / UOPS_ISSUED.ANY
> +[event24:base-stat]
> +fd=24
> +type=4
> +config=270
>  optional=1
>  
>  # PERF_TYPE_HW_CACHE /
>  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> -[event20:base-stat]
> -fd=20
> +[event25:base-stat]
> +fd=25
>  type=3
>  config=0
>  optional=1
> @@ -181,8 +200,8 @@ optional=1
>  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> -[event21:base-stat]
> -fd=21
> +[event26:base-stat]
> +fd=26
>  type=3
>  config=65536
>  optional=1
> @@ -191,8 +210,8 @@ optional=1
>  #  PERF_COUNT_HW_CACHE_LL                 <<  0  |
>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> -[event22:base-stat]
> -fd=22
> +[event27:base-stat]
> +fd=27
>  type=3
>  config=2
>  optional=1
> @@ -201,8 +220,8 @@ optional=1
>  #  PERF_COUNT_HW_CACHE_LL                 <<  0  |
>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> -[event23:base-stat]
> -fd=23
> +[event28:base-stat]
> +fd=28
>  type=3
>  config=65538
>  optional=1
> @@ -211,8 +230,8 @@ optional=1
>  #  PERF_COUNT_HW_CACHE_L1I                <<  0  |
>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> -[event24:base-stat]
> -fd=24
> +[event29:base-stat]
> +fd=29
>  type=3
>  config=1
>  optional=1
> @@ -221,8 +240,8 @@ optional=1
>  #  PERF_COUNT_HW_CACHE_L1I                <<  0  |
>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> -[event25:base-stat]
> -fd=25
> +[event30:base-stat]
> +fd=30
>  type=3
>  config=65537
>  optional=1
> @@ -231,8 +250,8 @@ optional=1
>  #  PERF_COUNT_HW_CACHE_DTLB               <<  0  |
>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> -[event26:base-stat]
> -fd=26
> +[event31:base-stat]
> +fd=31
>  type=3
>  config=3
>  optional=1
> @@ -241,8 +260,8 @@ optional=1
>  #  PERF_COUNT_HW_CACHE_DTLB               <<  0  |
>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> -[event27:base-stat]
> -fd=27
> +[event32:base-stat]
> +fd=32
>  type=3
>  config=65539
>  optional=1
> @@ -251,8 +270,8 @@ optional=1
>  #  PERF_COUNT_HW_CACHE_ITLB               <<  0  |
>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> -[event28:base-stat]
> -fd=28
> +[event33:base-stat]
> +fd=33
>  type=3
>  config=4
>  optional=1
> @@ -261,8 +280,8 @@ optional=1
>  #  PERF_COUNT_HW_CACHE_ITLB               <<  0  |
>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> -[event29:base-stat]
> -fd=29
> +[event34:base-stat]
> +fd=34
>  type=3
>  config=65540
>  optional=1
> diff --git a/tools/perf/tests/attr/test-stat-detailed-3 b/tools/perf/tests/attr/test-stat-detailed-3
> index d555042e3fbf..e50535f45977 100644
> --- a/tools/perf/tests/attr/test-stat-detailed-3
> +++ b/tools/perf/tests/attr/test-stat-detailed-3
> @@ -90,89 +90,108 @@ enable_on_exec=0
>  read_format=15
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
> +# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
>  [event13:base-stat]
>  fd=13
>  group_fd=11
>  type=4
> -config=33024
> +config=33280
>  disabled=0
>  enable_on_exec=0
>  read_format=15
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
> +# PERF_TYPE_RAW / topdown-be-bound (0x8300)
>  [event14:base-stat]
>  fd=14
>  group_fd=11
>  type=4
> -config=33280
> +config=33536
>  disabled=0
>  enable_on_exec=0
>  read_format=15
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-be-bound (0x8300)
> +# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
>  [event15:base-stat]
>  fd=15
>  group_fd=11
>  type=4
> -config=33536
> +config=33024
>  disabled=0
>  enable_on_exec=0
>  read_format=15
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-heavy-ops (0x8400)
> +# PERF_TYPE_RAW / INT_MISC.UOP_DROPPING
>  [event16:base-stat]
>  fd=16
> -group_fd=11
>  type=4
> -config=33792
> -disabled=0
> -enable_on_exec=0
> -read_format=15
> +config=4109
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-br-mispredict (0x8500)
> +# PERF_TYPE_RAW / cpu/INT_MISC.RECOVERY_CYCLES,cmask=1,edge/
>  [event17:base-stat]
>  fd=17
> -group_fd=11
>  type=4
> -config=34048
> -disabled=0
> -enable_on_exec=0
> -read_format=15
> +config=17039629
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-fetch-lat (0x8600)
> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.THREAD
>  [event18:base-stat]
>  fd=18
> -group_fd=11
>  type=4
> -config=34304
> -disabled=0
> -enable_on_exec=0
> -read_format=15
> +config=60
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-mem-bound (0x8700)
> +# PERF_TYPE_RAW / INT_MISC.RECOVERY_CYCLES_ANY
>  [event19:base-stat]
>  fd=19
> -group_fd=11
>  type=4
> -config=34560
> -disabled=0
> -enable_on_exec=0
> -read_format=15
> +config=2097421
> +optional=1
> +
> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.REF_XCLK
> +[event20:base-stat]
> +fd=20
> +type=4
> +config=316
> +optional=1
> +
> +# PERF_TYPE_RAW / IDQ_UOPS_NOT_DELIVERED.CORE
> +[event21:base-stat]
> +fd=21
> +type=4
> +config=412
> +optional=1
> +
> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.ONE_THREAD_ACTIVE
> +[event22:base-stat]
> +fd=22
> +type=4
> +config=572
> +optional=1
> +
> +# PERF_TYPE_RAW / UOPS_RETIRED.RETIRE_SLOTS
> +[event23:base-stat]
> +fd=23
> +type=4
> +config=706
> +optional=1
> +
> +# PERF_TYPE_RAW / UOPS_ISSUED.ANY
> +[event24:base-stat]
> +fd=24
> +type=4
> +config=270
>  optional=1
>  
>  # PERF_TYPE_HW_CACHE /
>  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> -[event20:base-stat]
> -fd=20
> +[event25:base-stat]
> +fd=25
>  type=3
>  config=0
>  optional=1
> @@ -181,8 +200,8 @@ optional=1
>  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> -[event21:base-stat]
> -fd=21
> +[event26:base-stat]
> +fd=26
>  type=3
>  config=65536
>  optional=1
> @@ -191,8 +210,8 @@ optional=1
>  #  PERF_COUNT_HW_CACHE_LL                 <<  0  |
>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> -[event22:base-stat]
> -fd=22
> +[event27:base-stat]
> +fd=27
>  type=3
>  config=2
>  optional=1
> @@ -201,8 +220,8 @@ optional=1
>  #  PERF_COUNT_HW_CACHE_LL                 <<  0  |
>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> -[event23:base-stat]
> -fd=23
> +[event28:base-stat]
> +fd=28
>  type=3
>  config=65538
>  optional=1
> @@ -211,8 +230,8 @@ optional=1
>  #  PERF_COUNT_HW_CACHE_L1I                <<  0  |
>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> -[event24:base-stat]
> -fd=24
> +[event29:base-stat]
> +fd=29
>  type=3
>  config=1
>  optional=1
> @@ -221,8 +240,8 @@ optional=1
>  #  PERF_COUNT_HW_CACHE_L1I                <<  0  |
>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> -[event25:base-stat]
> -fd=25
> +[event30:base-stat]
> +fd=30
>  type=3
>  config=65537
>  optional=1
> @@ -231,8 +250,8 @@ optional=1
>  #  PERF_COUNT_HW_CACHE_DTLB               <<  0  |
>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> -[event26:base-stat]
> -fd=26
> +[event31:base-stat]
> +fd=31
>  type=3
>  config=3
>  optional=1
> @@ -241,8 +260,8 @@ optional=1
>  #  PERF_COUNT_HW_CACHE_DTLB               <<  0  |
>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> -[event27:base-stat]
> -fd=27
> +[event32:base-stat]
> +fd=32
>  type=3
>  config=65539
>  optional=1
> @@ -251,8 +270,8 @@ optional=1
>  #  PERF_COUNT_HW_CACHE_ITLB               <<  0  |
>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> -[event28:base-stat]
> -fd=28
> +[event33:base-stat]
> +fd=33
>  type=3
>  config=4
>  optional=1
> @@ -261,8 +280,8 @@ optional=1
>  #  PERF_COUNT_HW_CACHE_ITLB               <<  0  |
>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> -[event29:base-stat]
> -fd=29
> +[event34:base-stat]
> +fd=34
>  type=3
>  config=65540
>  optional=1
> @@ -271,8 +290,8 @@ optional=1
>  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
>  # (PERF_COUNT_HW_CACHE_OP_PREFETCH        <<  8) |
>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> -[event30:base-stat]
> -fd=30
> +[event35:base-stat]
> +fd=35
>  type=3
>  config=512
>  optional=1
> @@ -281,8 +300,8 @@ optional=1
>  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
>  # (PERF_COUNT_HW_CACHE_OP_PREFETCH        <<  8) |
>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> -[event31:base-stat]
> -fd=31
> +[event36:base-stat]
> +fd=36
>  type=3
>  config=66048
>  optional=1

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH v1 1/2] perf test attr: Update no event/metric expectations
  2023-05-18  7:50 ` [PATCH v1 1/2] perf test attr: Update no event/metric expectations James Clark
@ 2023-05-18 12:20   ` Arnaldo Carvalho de Melo
  2023-05-18 12:55     ` Liang, Kan
  0 siblings, 1 reply; 14+ messages in thread
From: Arnaldo Carvalho de Melo @ 2023-05-18 12:20 UTC (permalink / raw)
  To: James Clark
  Cc: Ian Rogers, Peter Zijlstra, Ingo Molnar, Mark Rutland,
	Alexander Shishkin, Jiri Olsa, Namhyung Kim, Adrian Hunter,
	Thomas Richter, linux-perf-users, linux-kernel, Kan Liang

Em Thu, May 18, 2023 at 08:50:14AM +0100, James Clark escreveu:
> 
> 
> On 17/05/2023 23:57, Ian Rogers wrote:
> > Previously hard coded events/metrics were used, update for the use of
> > the TopdownL1 json metric group.
> > 
> > Fixes: 94b1a603fca7 ("perf stat: Add TopdownL1 metric as a default if present")
> > Signed-off-by: Ian Rogers <irogers@google.com>
> > ---
> >  tools/perf/tests/attr/base-stat            |   2 +-
> >  tools/perf/tests/attr/test-stat-default    |  80 ++++++++-----
> >  tools/perf/tests/attr/test-stat-detailed-1 |  95 +++++++++------
> >  tools/perf/tests/attr/test-stat-detailed-2 | 119 +++++++++++--------
> >  tools/perf/tests/attr/test-stat-detailed-3 | 127 ++++++++++++---------
> >  5 files changed, 249 insertions(+), 174 deletions(-)
> > 
> 
> Reviewed-by: James Clark <james.clark@arm.com>

Thanks, applied both patches to perf-tools.

- Arnaldo

 
> > diff --git a/tools/perf/tests/attr/base-stat b/tools/perf/tests/attr/base-stat
> > index a21fb65bc012..fccd8ec4d1b0 100644
> > --- a/tools/perf/tests/attr/base-stat
> > +++ b/tools/perf/tests/attr/base-stat
> > @@ -16,7 +16,7 @@ pinned=0
> >  exclusive=0
> >  exclude_user=0
> >  exclude_kernel=0|1
> > -exclude_hv=0
> > +exclude_hv=0|1
> >  exclude_idle=0
> >  mmap=0
> >  comm=0
> > diff --git a/tools/perf/tests/attr/test-stat-default b/tools/perf/tests/attr/test-stat-default
> > index d8ea6a88163f..a1e2da0a9a6d 100644
> > --- a/tools/perf/tests/attr/test-stat-default
> > +++ b/tools/perf/tests/attr/test-stat-default
> > @@ -40,7 +40,6 @@ fd=6
> >  type=0
> >  config=7
> >  optional=1
> > -
> >  # PERF_TYPE_HARDWARE / PERF_COUNT_HW_STALLED_CYCLES_BACKEND
> >  [event7:base-stat]
> >  fd=7
> > @@ -89,79 +88,98 @@ enable_on_exec=0
> >  read_format=15
> >  optional=1
> >  
> > -# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
> > +# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
> >  [event13:base-stat]
> >  fd=13
> >  group_fd=11
> >  type=4
> > -config=33024
> > +config=33280
> >  disabled=0
> >  enable_on_exec=0
> >  read_format=15
> >  optional=1
> >  
> > -# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
> > +# PERF_TYPE_RAW / topdown-be-bound (0x8300)
> >  [event14:base-stat]
> >  fd=14
> >  group_fd=11
> >  type=4
> > -config=33280
> > +config=33536
> >  disabled=0
> >  enable_on_exec=0
> >  read_format=15
> >  optional=1
> >  
> > -# PERF_TYPE_RAW / topdown-be-bound (0x8300)
> > +# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
> >  [event15:base-stat]
> >  fd=15
> >  group_fd=11
> >  type=4
> > -config=33536
> > +config=33024
> >  disabled=0
> >  enable_on_exec=0
> >  read_format=15
> >  optional=1
> >  
> > -# PERF_TYPE_RAW / topdown-heavy-ops (0x8400)
> > +# PERF_TYPE_RAW / INT_MISC.UOP_DROPPING
> >  [event16:base-stat]
> >  fd=16
> > -group_fd=11
> >  type=4
> > -config=33792
> > -disabled=0
> > -enable_on_exec=0
> > -read_format=15
> > +config=4109
> >  optional=1
> >  
> > -# PERF_TYPE_RAW / topdown-br-mispredict (0x8500)
> > +# PERF_TYPE_RAW / cpu/INT_MISC.RECOVERY_CYCLES,cmask=1,edge/
> >  [event17:base-stat]
> >  fd=17
> > -group_fd=11
> >  type=4
> > -config=34048
> > -disabled=0
> > -enable_on_exec=0
> > -read_format=15
> > +config=17039629
> >  optional=1
> >  
> > -# PERF_TYPE_RAW / topdown-fetch-lat (0x8600)
> > +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.THREAD
> >  [event18:base-stat]
> >  fd=18
> > -group_fd=11
> >  type=4
> > -config=34304
> > -disabled=0
> > -enable_on_exec=0
> > -read_format=15
> > +config=60
> >  optional=1
> >  
> > -# PERF_TYPE_RAW / topdown-mem-bound (0x8700)
> > +# PERF_TYPE_RAW / INT_MISC.RECOVERY_CYCLES_ANY
> >  [event19:base-stat]
> >  fd=19
> > -group_fd=11
> >  type=4
> > -config=34560
> > -disabled=0
> > -enable_on_exec=0
> > -read_format=15
> > +config=2097421
> > +optional=1
> > +
> > +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.REF_XCLK
> > +[event20:base-stat]
> > +fd=20
> > +type=4
> > +config=316
> > +optional=1
> > +
> > +# PERF_TYPE_RAW / IDQ_UOPS_NOT_DELIVERED.CORE
> > +[event21:base-stat]
> > +fd=21
> > +type=4
> > +config=412
> > +optional=1
> > +
> > +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.ONE_THREAD_ACTIVE
> > +[event22:base-stat]
> > +fd=22
> > +type=4
> > +config=572
> > +optional=1
> > +
> > +# PERF_TYPE_RAW / UOPS_RETIRED.RETIRE_SLOTS
> > +[event23:base-stat]
> > +fd=23
> > +type=4
> > +config=706
> > +optional=1
> > +
> > +# PERF_TYPE_RAW / UOPS_ISSUED.ANY
> > +[event24:base-stat]
> > +fd=24
> > +type=4
> > +config=270
> >  optional=1
> > diff --git a/tools/perf/tests/attr/test-stat-detailed-1 b/tools/perf/tests/attr/test-stat-detailed-1
> > index b656ab93c5bf..1c52cb05c900 100644
> > --- a/tools/perf/tests/attr/test-stat-detailed-1
> > +++ b/tools/perf/tests/attr/test-stat-detailed-1
> > @@ -90,89 +90,108 @@ enable_on_exec=0
> >  read_format=15
> >  optional=1
> >  
> > -# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
> > +# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
> >  [event13:base-stat]
> >  fd=13
> >  group_fd=11
> >  type=4
> > -config=33024
> > +config=33280
> >  disabled=0
> >  enable_on_exec=0
> >  read_format=15
> >  optional=1
> >  
> > -# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
> > +# PERF_TYPE_RAW / topdown-be-bound (0x8300)
> >  [event14:base-stat]
> >  fd=14
> >  group_fd=11
> >  type=4
> > -config=33280
> > +config=33536
> >  disabled=0
> >  enable_on_exec=0
> >  read_format=15
> >  optional=1
> >  
> > -# PERF_TYPE_RAW / topdown-be-bound (0x8300)
> > +# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
> >  [event15:base-stat]
> >  fd=15
> >  group_fd=11
> >  type=4
> > -config=33536
> > +config=33024
> >  disabled=0
> >  enable_on_exec=0
> >  read_format=15
> >  optional=1
> >  
> > -# PERF_TYPE_RAW / topdown-heavy-ops (0x8400)
> > +# PERF_TYPE_RAW / INT_MISC.UOP_DROPPING
> >  [event16:base-stat]
> >  fd=16
> > -group_fd=11
> >  type=4
> > -config=33792
> > -disabled=0
> > -enable_on_exec=0
> > -read_format=15
> > +config=4109
> >  optional=1
> >  
> > -# PERF_TYPE_RAW / topdown-br-mispredict (0x8500)
> > +# PERF_TYPE_RAW / cpu/INT_MISC.RECOVERY_CYCLES,cmask=1,edge/
> >  [event17:base-stat]
> >  fd=17
> > -group_fd=11
> >  type=4
> > -config=34048
> > -disabled=0
> > -enable_on_exec=0
> > -read_format=15
> > +config=17039629
> >  optional=1
> >  
> > -# PERF_TYPE_RAW / topdown-fetch-lat (0x8600)
> > +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.THREAD
> >  [event18:base-stat]
> >  fd=18
> > -group_fd=11
> >  type=4
> > -config=34304
> > -disabled=0
> > -enable_on_exec=0
> > -read_format=15
> > +config=60
> >  optional=1
> >  
> > -# PERF_TYPE_RAW / topdown-mem-bound (0x8700)
> > +# PERF_TYPE_RAW / INT_MISC.RECOVERY_CYCLES_ANY
> >  [event19:base-stat]
> >  fd=19
> > -group_fd=11
> >  type=4
> > -config=34560
> > -disabled=0
> > -enable_on_exec=0
> > -read_format=15
> > +config=2097421
> > +optional=1
> > +
> > +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.REF_XCLK
> > +[event20:base-stat]
> > +fd=20
> > +type=4
> > +config=316
> > +optional=1
> > +
> > +# PERF_TYPE_RAW / IDQ_UOPS_NOT_DELIVERED.CORE
> > +[event21:base-stat]
> > +fd=21
> > +type=4
> > +config=412
> > +optional=1
> > +
> > +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.ONE_THREAD_ACTIVE
> > +[event22:base-stat]
> > +fd=22
> > +type=4
> > +config=572
> > +optional=1
> > +
> > +# PERF_TYPE_RAW / UOPS_RETIRED.RETIRE_SLOTS
> > +[event23:base-stat]
> > +fd=23
> > +type=4
> > +config=706
> > +optional=1
> > +
> > +# PERF_TYPE_RAW / UOPS_ISSUED.ANY
> > +[event24:base-stat]
> > +fd=24
> > +type=4
> > +config=270
> >  optional=1
> >  
> >  # PERF_TYPE_HW_CACHE /
> >  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
> >  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> > -[event20:base-stat]
> > -fd=20
> > +[event25:base-stat]
> > +fd=25
> >  type=3
> >  config=0
> >  optional=1
> > @@ -181,8 +200,8 @@ optional=1
> >  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
> >  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> > -[event21:base-stat]
> > -fd=21
> > +[event26:base-stat]
> > +fd=26
> >  type=3
> >  config=65536
> >  optional=1
> > @@ -191,8 +210,8 @@ optional=1
> >  #  PERF_COUNT_HW_CACHE_LL                 <<  0  |
> >  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> > -[event22:base-stat]
> > -fd=22
> > +[event27:base-stat]
> > +fd=27
> >  type=3
> >  config=2
> >  optional=1
> > @@ -201,8 +220,8 @@ optional=1
> >  #  PERF_COUNT_HW_CACHE_LL                 <<  0  |
> >  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> > -[event23:base-stat]
> > -fd=23
> > +[event28:base-stat]
> > +fd=28
> >  type=3
> >  config=65538
> >  optional=1
> > diff --git a/tools/perf/tests/attr/test-stat-detailed-2 b/tools/perf/tests/attr/test-stat-detailed-2
> > index 97625090a1c4..7e961d24a885 100644
> > --- a/tools/perf/tests/attr/test-stat-detailed-2
> > +++ b/tools/perf/tests/attr/test-stat-detailed-2
> > @@ -90,89 +90,108 @@ enable_on_exec=0
> >  read_format=15
> >  optional=1
> >  
> > -# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
> > +# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
> >  [event13:base-stat]
> >  fd=13
> >  group_fd=11
> >  type=4
> > -config=33024
> > +config=33280
> >  disabled=0
> >  enable_on_exec=0
> >  read_format=15
> >  optional=1
> >  
> > -# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
> > +# PERF_TYPE_RAW / topdown-be-bound (0x8300)
> >  [event14:base-stat]
> >  fd=14
> >  group_fd=11
> >  type=4
> > -config=33280
> > +config=33536
> >  disabled=0
> >  enable_on_exec=0
> >  read_format=15
> >  optional=1
> >  
> > -# PERF_TYPE_RAW / topdown-be-bound (0x8300)
> > +# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
> >  [event15:base-stat]
> >  fd=15
> >  group_fd=11
> >  type=4
> > -config=33536
> > +config=33024
> >  disabled=0
> >  enable_on_exec=0
> >  read_format=15
> >  optional=1
> >  
> > -# PERF_TYPE_RAW / topdown-heavy-ops (0x8400)
> > +# PERF_TYPE_RAW / INT_MISC.UOP_DROPPING
> >  [event16:base-stat]
> >  fd=16
> > -group_fd=11
> >  type=4
> > -config=33792
> > -disabled=0
> > -enable_on_exec=0
> > -read_format=15
> > +config=4109
> >  optional=1
> >  
> > -# PERF_TYPE_RAW / topdown-br-mispredict (0x8500)
> > +# PERF_TYPE_RAW / cpu/INT_MISC.RECOVERY_CYCLES,cmask=1,edge/
> >  [event17:base-stat]
> >  fd=17
> > -group_fd=11
> >  type=4
> > -config=34048
> > -disabled=0
> > -enable_on_exec=0
> > -read_format=15
> > +config=17039629
> >  optional=1
> >  
> > -# PERF_TYPE_RAW / topdown-fetch-lat (0x8600)
> > +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.THREAD
> >  [event18:base-stat]
> >  fd=18
> > -group_fd=11
> >  type=4
> > -config=34304
> > -disabled=0
> > -enable_on_exec=0
> > -read_format=15
> > +config=60
> >  optional=1
> >  
> > -# PERF_TYPE_RAW / topdown-mem-bound (0x8700)
> > +# PERF_TYPE_RAW / INT_MISC.RECOVERY_CYCLES_ANY
> >  [event19:base-stat]
> >  fd=19
> > -group_fd=11
> >  type=4
> > -config=34560
> > -disabled=0
> > -enable_on_exec=0
> > -read_format=15
> > +config=2097421
> > +optional=1
> > +
> > +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.REF_XCLK
> > +[event20:base-stat]
> > +fd=20
> > +type=4
> > +config=316
> > +optional=1
> > +
> > +# PERF_TYPE_RAW / IDQ_UOPS_NOT_DELIVERED.CORE
> > +[event21:base-stat]
> > +fd=21
> > +type=4
> > +config=412
> > +optional=1
> > +
> > +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.ONE_THREAD_ACTIVE
> > +[event22:base-stat]
> > +fd=22
> > +type=4
> > +config=572
> > +optional=1
> > +
> > +# PERF_TYPE_RAW / UOPS_RETIRED.RETIRE_SLOTS
> > +[event23:base-stat]
> > +fd=23
> > +type=4
> > +config=706
> > +optional=1
> > +
> > +# PERF_TYPE_RAW / UOPS_ISSUED.ANY
> > +[event24:base-stat]
> > +fd=24
> > +type=4
> > +config=270
> >  optional=1
> >  
> >  # PERF_TYPE_HW_CACHE /
> >  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
> >  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> > -[event20:base-stat]
> > -fd=20
> > +[event25:base-stat]
> > +fd=25
> >  type=3
> >  config=0
> >  optional=1
> > @@ -181,8 +200,8 @@ optional=1
> >  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
> >  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> > -[event21:base-stat]
> > -fd=21
> > +[event26:base-stat]
> > +fd=26
> >  type=3
> >  config=65536
> >  optional=1
> > @@ -191,8 +210,8 @@ optional=1
> >  #  PERF_COUNT_HW_CACHE_LL                 <<  0  |
> >  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> > -[event22:base-stat]
> > -fd=22
> > +[event27:base-stat]
> > +fd=27
> >  type=3
> >  config=2
> >  optional=1
> > @@ -201,8 +220,8 @@ optional=1
> >  #  PERF_COUNT_HW_CACHE_LL                 <<  0  |
> >  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> > -[event23:base-stat]
> > -fd=23
> > +[event28:base-stat]
> > +fd=28
> >  type=3
> >  config=65538
> >  optional=1
> > @@ -211,8 +230,8 @@ optional=1
> >  #  PERF_COUNT_HW_CACHE_L1I                <<  0  |
> >  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> > -[event24:base-stat]
> > -fd=24
> > +[event29:base-stat]
> > +fd=29
> >  type=3
> >  config=1
> >  optional=1
> > @@ -221,8 +240,8 @@ optional=1
> >  #  PERF_COUNT_HW_CACHE_L1I                <<  0  |
> >  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> > -[event25:base-stat]
> > -fd=25
> > +[event30:base-stat]
> > +fd=30
> >  type=3
> >  config=65537
> >  optional=1
> > @@ -231,8 +250,8 @@ optional=1
> >  #  PERF_COUNT_HW_CACHE_DTLB               <<  0  |
> >  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> > -[event26:base-stat]
> > -fd=26
> > +[event31:base-stat]
> > +fd=31
> >  type=3
> >  config=3
> >  optional=1
> > @@ -241,8 +260,8 @@ optional=1
> >  #  PERF_COUNT_HW_CACHE_DTLB               <<  0  |
> >  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> > -[event27:base-stat]
> > -fd=27
> > +[event32:base-stat]
> > +fd=32
> >  type=3
> >  config=65539
> >  optional=1
> > @@ -251,8 +270,8 @@ optional=1
> >  #  PERF_COUNT_HW_CACHE_ITLB               <<  0  |
> >  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> > -[event28:base-stat]
> > -fd=28
> > +[event33:base-stat]
> > +fd=33
> >  type=3
> >  config=4
> >  optional=1
> > @@ -261,8 +280,8 @@ optional=1
> >  #  PERF_COUNT_HW_CACHE_ITLB               <<  0  |
> >  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> > -[event29:base-stat]
> > -fd=29
> > +[event34:base-stat]
> > +fd=34
> >  type=3
> >  config=65540
> >  optional=1
> > diff --git a/tools/perf/tests/attr/test-stat-detailed-3 b/tools/perf/tests/attr/test-stat-detailed-3
> > index d555042e3fbf..e50535f45977 100644
> > --- a/tools/perf/tests/attr/test-stat-detailed-3
> > +++ b/tools/perf/tests/attr/test-stat-detailed-3
> > @@ -90,89 +90,108 @@ enable_on_exec=0
> >  read_format=15
> >  optional=1
> >  
> > -# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
> > +# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
> >  [event13:base-stat]
> >  fd=13
> >  group_fd=11
> >  type=4
> > -config=33024
> > +config=33280
> >  disabled=0
> >  enable_on_exec=0
> >  read_format=15
> >  optional=1
> >  
> > -# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
> > +# PERF_TYPE_RAW / topdown-be-bound (0x8300)
> >  [event14:base-stat]
> >  fd=14
> >  group_fd=11
> >  type=4
> > -config=33280
> > +config=33536
> >  disabled=0
> >  enable_on_exec=0
> >  read_format=15
> >  optional=1
> >  
> > -# PERF_TYPE_RAW / topdown-be-bound (0x8300)
> > +# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
> >  [event15:base-stat]
> >  fd=15
> >  group_fd=11
> >  type=4
> > -config=33536
> > +config=33024
> >  disabled=0
> >  enable_on_exec=0
> >  read_format=15
> >  optional=1
> >  
> > -# PERF_TYPE_RAW / topdown-heavy-ops (0x8400)
> > +# PERF_TYPE_RAW / INT_MISC.UOP_DROPPING
> >  [event16:base-stat]
> >  fd=16
> > -group_fd=11
> >  type=4
> > -config=33792
> > -disabled=0
> > -enable_on_exec=0
> > -read_format=15
> > +config=4109
> >  optional=1
> >  
> > -# PERF_TYPE_RAW / topdown-br-mispredict (0x8500)
> > +# PERF_TYPE_RAW / cpu/INT_MISC.RECOVERY_CYCLES,cmask=1,edge/
> >  [event17:base-stat]
> >  fd=17
> > -group_fd=11
> >  type=4
> > -config=34048
> > -disabled=0
> > -enable_on_exec=0
> > -read_format=15
> > +config=17039629
> >  optional=1
> >  
> > -# PERF_TYPE_RAW / topdown-fetch-lat (0x8600)
> > +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.THREAD
> >  [event18:base-stat]
> >  fd=18
> > -group_fd=11
> >  type=4
> > -config=34304
> > -disabled=0
> > -enable_on_exec=0
> > -read_format=15
> > +config=60
> >  optional=1
> >  
> > -# PERF_TYPE_RAW / topdown-mem-bound (0x8700)
> > +# PERF_TYPE_RAW / INT_MISC.RECOVERY_CYCLES_ANY
> >  [event19:base-stat]
> >  fd=19
> > -group_fd=11
> >  type=4
> > -config=34560
> > -disabled=0
> > -enable_on_exec=0
> > -read_format=15
> > +config=2097421
> > +optional=1
> > +
> > +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.REF_XCLK
> > +[event20:base-stat]
> > +fd=20
> > +type=4
> > +config=316
> > +optional=1
> > +
> > +# PERF_TYPE_RAW / IDQ_UOPS_NOT_DELIVERED.CORE
> > +[event21:base-stat]
> > +fd=21
> > +type=4
> > +config=412
> > +optional=1
> > +
> > +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.ONE_THREAD_ACTIVE
> > +[event22:base-stat]
> > +fd=22
> > +type=4
> > +config=572
> > +optional=1
> > +
> > +# PERF_TYPE_RAW / UOPS_RETIRED.RETIRE_SLOTS
> > +[event23:base-stat]
> > +fd=23
> > +type=4
> > +config=706
> > +optional=1
> > +
> > +# PERF_TYPE_RAW / UOPS_ISSUED.ANY
> > +[event24:base-stat]
> > +fd=24
> > +type=4
> > +config=270
> >  optional=1
> >  
> >  # PERF_TYPE_HW_CACHE /
> >  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
> >  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> > -[event20:base-stat]
> > -fd=20
> > +[event25:base-stat]
> > +fd=25
> >  type=3
> >  config=0
> >  optional=1
> > @@ -181,8 +200,8 @@ optional=1
> >  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
> >  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> > -[event21:base-stat]
> > -fd=21
> > +[event26:base-stat]
> > +fd=26
> >  type=3
> >  config=65536
> >  optional=1
> > @@ -191,8 +210,8 @@ optional=1
> >  #  PERF_COUNT_HW_CACHE_LL                 <<  0  |
> >  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> > -[event22:base-stat]
> > -fd=22
> > +[event27:base-stat]
> > +fd=27
> >  type=3
> >  config=2
> >  optional=1
> > @@ -201,8 +220,8 @@ optional=1
> >  #  PERF_COUNT_HW_CACHE_LL                 <<  0  |
> >  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> > -[event23:base-stat]
> > -fd=23
> > +[event28:base-stat]
> > +fd=28
> >  type=3
> >  config=65538
> >  optional=1
> > @@ -211,8 +230,8 @@ optional=1
> >  #  PERF_COUNT_HW_CACHE_L1I                <<  0  |
> >  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> > -[event24:base-stat]
> > -fd=24
> > +[event29:base-stat]
> > +fd=29
> >  type=3
> >  config=1
> >  optional=1
> > @@ -221,8 +240,8 @@ optional=1
> >  #  PERF_COUNT_HW_CACHE_L1I                <<  0  |
> >  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> > -[event25:base-stat]
> > -fd=25
> > +[event30:base-stat]
> > +fd=30
> >  type=3
> >  config=65537
> >  optional=1
> > @@ -231,8 +250,8 @@ optional=1
> >  #  PERF_COUNT_HW_CACHE_DTLB               <<  0  |
> >  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> > -[event26:base-stat]
> > -fd=26
> > +[event31:base-stat]
> > +fd=31
> >  type=3
> >  config=3
> >  optional=1
> > @@ -241,8 +260,8 @@ optional=1
> >  #  PERF_COUNT_HW_CACHE_DTLB               <<  0  |
> >  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> > -[event27:base-stat]
> > -fd=27
> > +[event32:base-stat]
> > +fd=32
> >  type=3
> >  config=65539
> >  optional=1
> > @@ -251,8 +270,8 @@ optional=1
> >  #  PERF_COUNT_HW_CACHE_ITLB               <<  0  |
> >  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> > -[event28:base-stat]
> > -fd=28
> > +[event33:base-stat]
> > +fd=33
> >  type=3
> >  config=4
> >  optional=1
> > @@ -261,8 +280,8 @@ optional=1
> >  #  PERF_COUNT_HW_CACHE_ITLB               <<  0  |
> >  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> > -[event29:base-stat]
> > -fd=29
> > +[event34:base-stat]
> > +fd=34
> >  type=3
> >  config=65540
> >  optional=1
> > @@ -271,8 +290,8 @@ optional=1
> >  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
> >  # (PERF_COUNT_HW_CACHE_OP_PREFETCH        <<  8) |
> >  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> > -[event30:base-stat]
> > -fd=30
> > +[event35:base-stat]
> > +fd=35
> >  type=3
> >  config=512
> >  optional=1
> > @@ -281,8 +300,8 @@ optional=1
> >  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
> >  # (PERF_COUNT_HW_CACHE_OP_PREFETCH        <<  8) |
> >  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> > -[event31:base-stat]
> > -fd=31
> > +[event36:base-stat]
> > +fd=36
> >  type=3
> >  config=66048
> >  optional=1

-- 

- Arnaldo

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH v1 1/2] perf test attr: Update no event/metric expectations
  2023-05-18 12:20   ` Arnaldo Carvalho de Melo
@ 2023-05-18 12:55     ` Liang, Kan
  2023-05-18 17:45       ` Liang, Kan
  0 siblings, 1 reply; 14+ messages in thread
From: Liang, Kan @ 2023-05-18 12:55 UTC (permalink / raw)
  To: Arnaldo Carvalho de Melo, James Clark, Ian Rogers
  Cc: Peter Zijlstra, Ingo Molnar, Mark Rutland, Alexander Shishkin,
	Jiri Olsa, Namhyung Kim, Adrian Hunter, Thomas Richter,
	linux-perf-users, linux-kernel

Hi Arnaldo,

On 2023-05-18 8:20 a.m., Arnaldo Carvalho de Melo wrote:
> Em Thu, May 18, 2023 at 08:50:14AM +0100, James Clark escreveu:
>>
>>
>> On 17/05/2023 23:57, Ian Rogers wrote:
>>> Previously hard coded events/metrics were used, update for the use of
>>> the TopdownL1 json metric group.
>>>
>>> Fixes: 94b1a603fca7 ("perf stat: Add TopdownL1 metric as a default if present")
>>> Signed-off-by: Ian Rogers <irogers@google.com>
>>> ---
>>>  tools/perf/tests/attr/base-stat            |   2 +-
>>>  tools/perf/tests/attr/test-stat-default    |  80 ++++++++-----
>>>  tools/perf/tests/attr/test-stat-detailed-1 |  95 +++++++++------
>>>  tools/perf/tests/attr/test-stat-detailed-2 | 119 +++++++++++--------
>>>  tools/perf/tests/attr/test-stat-detailed-3 | 127 ++++++++++++---------
>>>  5 files changed, 249 insertions(+), 174 deletions(-)
>>>
>>
>> Reviewed-by: James Clark <james.clark@arm.com>
> 
> Thanks, applied both patches to perf-tools.
> 

Could you please hold patch 1 for a while?

The formula of TopdownL1 may be changed generation by generation on
Intel platforms. Some of events in the current TopdownL1 formula, e.g.,
INT_MISC.UOP_DROPPING, (Which are harded code in this patch), are not
architectural events. It means that they may be changed in the future
platforms as well.

Hard code the current TopdownL1 formual and the non-architectural events
don't seems a proper fix for the generic perf test case. We have to
update the test case for each generation when the formula is changed.

Thanks,
Kan

> - Arnaldo
> 
>  
>>> diff --git a/tools/perf/tests/attr/base-stat b/tools/perf/tests/attr/base-stat
>>> index a21fb65bc012..fccd8ec4d1b0 100644
>>> --- a/tools/perf/tests/attr/base-stat
>>> +++ b/tools/perf/tests/attr/base-stat
>>> @@ -16,7 +16,7 @@ pinned=0
>>>  exclusive=0
>>>  exclude_user=0
>>>  exclude_kernel=0|1
>>> -exclude_hv=0
>>> +exclude_hv=0|1
>>>  exclude_idle=0
>>>  mmap=0
>>>  comm=0
>>> diff --git a/tools/perf/tests/attr/test-stat-default b/tools/perf/tests/attr/test-stat-default
>>> index d8ea6a88163f..a1e2da0a9a6d 100644
>>> --- a/tools/perf/tests/attr/test-stat-default
>>> +++ b/tools/perf/tests/attr/test-stat-default
>>> @@ -40,7 +40,6 @@ fd=6
>>>  type=0
>>>  config=7
>>>  optional=1
>>> -
>>>  # PERF_TYPE_HARDWARE / PERF_COUNT_HW_STALLED_CYCLES_BACKEND
>>>  [event7:base-stat]
>>>  fd=7
>>> @@ -89,79 +88,98 @@ enable_on_exec=0
>>>  read_format=15
>>>  optional=1
>>>  
>>> -# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
>>> +# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
>>>  [event13:base-stat]
>>>  fd=13
>>>  group_fd=11
>>>  type=4
>>> -config=33024
>>> +config=33280
>>>  disabled=0
>>>  enable_on_exec=0
>>>  read_format=15
>>>  optional=1
>>>  
>>> -# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
>>> +# PERF_TYPE_RAW / topdown-be-bound (0x8300)
>>>  [event14:base-stat]
>>>  fd=14
>>>  group_fd=11
>>>  type=4
>>> -config=33280
>>> +config=33536
>>>  disabled=0
>>>  enable_on_exec=0
>>>  read_format=15
>>>  optional=1
>>>  
>>> -# PERF_TYPE_RAW / topdown-be-bound (0x8300)
>>> +# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
>>>  [event15:base-stat]
>>>  fd=15
>>>  group_fd=11
>>>  type=4
>>> -config=33536
>>> +config=33024
>>>  disabled=0
>>>  enable_on_exec=0
>>>  read_format=15
>>>  optional=1
>>>  
>>> -# PERF_TYPE_RAW / topdown-heavy-ops (0x8400)
>>> +# PERF_TYPE_RAW / INT_MISC.UOP_DROPPING
>>>  [event16:base-stat]
>>>  fd=16
>>> -group_fd=11
>>>  type=4
>>> -config=33792
>>> -disabled=0
>>> -enable_on_exec=0
>>> -read_format=15
>>> +config=4109
>>>  optional=1
>>>  
>>> -# PERF_TYPE_RAW / topdown-br-mispredict (0x8500)
>>> +# PERF_TYPE_RAW / cpu/INT_MISC.RECOVERY_CYCLES,cmask=1,edge/
>>>  [event17:base-stat]
>>>  fd=17
>>> -group_fd=11
>>>  type=4
>>> -config=34048
>>> -disabled=0
>>> -enable_on_exec=0
>>> -read_format=15
>>> +config=17039629
>>>  optional=1
>>>  
>>> -# PERF_TYPE_RAW / topdown-fetch-lat (0x8600)
>>> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.THREAD
>>>  [event18:base-stat]
>>>  fd=18
>>> -group_fd=11
>>>  type=4
>>> -config=34304
>>> -disabled=0
>>> -enable_on_exec=0
>>> -read_format=15
>>> +config=60
>>>  optional=1
>>>  
>>> -# PERF_TYPE_RAW / topdown-mem-bound (0x8700)
>>> +# PERF_TYPE_RAW / INT_MISC.RECOVERY_CYCLES_ANY
>>>  [event19:base-stat]
>>>  fd=19
>>> -group_fd=11
>>>  type=4
>>> -config=34560
>>> -disabled=0
>>> -enable_on_exec=0
>>> -read_format=15
>>> +config=2097421
>>> +optional=1
>>> +
>>> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.REF_XCLK
>>> +[event20:base-stat]
>>> +fd=20
>>> +type=4
>>> +config=316
>>> +optional=1
>>> +
>>> +# PERF_TYPE_RAW / IDQ_UOPS_NOT_DELIVERED.CORE
>>> +[event21:base-stat]
>>> +fd=21
>>> +type=4
>>> +config=412
>>> +optional=1
>>> +
>>> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.ONE_THREAD_ACTIVE
>>> +[event22:base-stat]
>>> +fd=22
>>> +type=4
>>> +config=572
>>> +optional=1
>>> +
>>> +# PERF_TYPE_RAW / UOPS_RETIRED.RETIRE_SLOTS
>>> +[event23:base-stat]
>>> +fd=23
>>> +type=4
>>> +config=706
>>> +optional=1
>>> +
>>> +# PERF_TYPE_RAW / UOPS_ISSUED.ANY
>>> +[event24:base-stat]
>>> +fd=24
>>> +type=4
>>> +config=270
>>>  optional=1
>>> diff --git a/tools/perf/tests/attr/test-stat-detailed-1 b/tools/perf/tests/attr/test-stat-detailed-1
>>> index b656ab93c5bf..1c52cb05c900 100644
>>> --- a/tools/perf/tests/attr/test-stat-detailed-1
>>> +++ b/tools/perf/tests/attr/test-stat-detailed-1
>>> @@ -90,89 +90,108 @@ enable_on_exec=0
>>>  read_format=15
>>>  optional=1
>>>  
>>> -# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
>>> +# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
>>>  [event13:base-stat]
>>>  fd=13
>>>  group_fd=11
>>>  type=4
>>> -config=33024
>>> +config=33280
>>>  disabled=0
>>>  enable_on_exec=0
>>>  read_format=15
>>>  optional=1
>>>  
>>> -# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
>>> +# PERF_TYPE_RAW / topdown-be-bound (0x8300)
>>>  [event14:base-stat]
>>>  fd=14
>>>  group_fd=11
>>>  type=4
>>> -config=33280
>>> +config=33536
>>>  disabled=0
>>>  enable_on_exec=0
>>>  read_format=15
>>>  optional=1
>>>  
>>> -# PERF_TYPE_RAW / topdown-be-bound (0x8300)
>>> +# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
>>>  [event15:base-stat]
>>>  fd=15
>>>  group_fd=11
>>>  type=4
>>> -config=33536
>>> +config=33024
>>>  disabled=0
>>>  enable_on_exec=0
>>>  read_format=15
>>>  optional=1
>>>  
>>> -# PERF_TYPE_RAW / topdown-heavy-ops (0x8400)
>>> +# PERF_TYPE_RAW / INT_MISC.UOP_DROPPING
>>>  [event16:base-stat]
>>>  fd=16
>>> -group_fd=11
>>>  type=4
>>> -config=33792
>>> -disabled=0
>>> -enable_on_exec=0
>>> -read_format=15
>>> +config=4109
>>>  optional=1
>>>  
>>> -# PERF_TYPE_RAW / topdown-br-mispredict (0x8500)
>>> +# PERF_TYPE_RAW / cpu/INT_MISC.RECOVERY_CYCLES,cmask=1,edge/
>>>  [event17:base-stat]
>>>  fd=17
>>> -group_fd=11
>>>  type=4
>>> -config=34048
>>> -disabled=0
>>> -enable_on_exec=0
>>> -read_format=15
>>> +config=17039629
>>>  optional=1
>>>  
>>> -# PERF_TYPE_RAW / topdown-fetch-lat (0x8600)
>>> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.THREAD
>>>  [event18:base-stat]
>>>  fd=18
>>> -group_fd=11
>>>  type=4
>>> -config=34304
>>> -disabled=0
>>> -enable_on_exec=0
>>> -read_format=15
>>> +config=60
>>>  optional=1
>>>  
>>> -# PERF_TYPE_RAW / topdown-mem-bound (0x8700)
>>> +# PERF_TYPE_RAW / INT_MISC.RECOVERY_CYCLES_ANY
>>>  [event19:base-stat]
>>>  fd=19
>>> -group_fd=11
>>>  type=4
>>> -config=34560
>>> -disabled=0
>>> -enable_on_exec=0
>>> -read_format=15
>>> +config=2097421
>>> +optional=1
>>> +
>>> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.REF_XCLK
>>> +[event20:base-stat]
>>> +fd=20
>>> +type=4
>>> +config=316
>>> +optional=1
>>> +
>>> +# PERF_TYPE_RAW / IDQ_UOPS_NOT_DELIVERED.CORE
>>> +[event21:base-stat]
>>> +fd=21
>>> +type=4
>>> +config=412
>>> +optional=1
>>> +
>>> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.ONE_THREAD_ACTIVE
>>> +[event22:base-stat]
>>> +fd=22
>>> +type=4
>>> +config=572
>>> +optional=1
>>> +
>>> +# PERF_TYPE_RAW / UOPS_RETIRED.RETIRE_SLOTS
>>> +[event23:base-stat]
>>> +fd=23
>>> +type=4
>>> +config=706
>>> +optional=1
>>> +
>>> +# PERF_TYPE_RAW / UOPS_ISSUED.ANY
>>> +[event24:base-stat]
>>> +fd=24
>>> +type=4
>>> +config=270
>>>  optional=1
>>>  
>>>  # PERF_TYPE_HW_CACHE /
>>>  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
>>> -[event20:base-stat]
>>> -fd=20
>>> +[event25:base-stat]
>>> +fd=25
>>>  type=3
>>>  config=0
>>>  optional=1
>>> @@ -181,8 +200,8 @@ optional=1
>>>  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
>>> -[event21:base-stat]
>>> -fd=21
>>> +[event26:base-stat]
>>> +fd=26
>>>  type=3
>>>  config=65536
>>>  optional=1
>>> @@ -191,8 +210,8 @@ optional=1
>>>  #  PERF_COUNT_HW_CACHE_LL                 <<  0  |
>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
>>> -[event22:base-stat]
>>> -fd=22
>>> +[event27:base-stat]
>>> +fd=27
>>>  type=3
>>>  config=2
>>>  optional=1
>>> @@ -201,8 +220,8 @@ optional=1
>>>  #  PERF_COUNT_HW_CACHE_LL                 <<  0  |
>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
>>> -[event23:base-stat]
>>> -fd=23
>>> +[event28:base-stat]
>>> +fd=28
>>>  type=3
>>>  config=65538
>>>  optional=1
>>> diff --git a/tools/perf/tests/attr/test-stat-detailed-2 b/tools/perf/tests/attr/test-stat-detailed-2
>>> index 97625090a1c4..7e961d24a885 100644
>>> --- a/tools/perf/tests/attr/test-stat-detailed-2
>>> +++ b/tools/perf/tests/attr/test-stat-detailed-2
>>> @@ -90,89 +90,108 @@ enable_on_exec=0
>>>  read_format=15
>>>  optional=1
>>>  
>>> -# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
>>> +# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
>>>  [event13:base-stat]
>>>  fd=13
>>>  group_fd=11
>>>  type=4
>>> -config=33024
>>> +config=33280
>>>  disabled=0
>>>  enable_on_exec=0
>>>  read_format=15
>>>  optional=1
>>>  
>>> -# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
>>> +# PERF_TYPE_RAW / topdown-be-bound (0x8300)
>>>  [event14:base-stat]
>>>  fd=14
>>>  group_fd=11
>>>  type=4
>>> -config=33280
>>> +config=33536
>>>  disabled=0
>>>  enable_on_exec=0
>>>  read_format=15
>>>  optional=1
>>>  
>>> -# PERF_TYPE_RAW / topdown-be-bound (0x8300)
>>> +# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
>>>  [event15:base-stat]
>>>  fd=15
>>>  group_fd=11
>>>  type=4
>>> -config=33536
>>> +config=33024
>>>  disabled=0
>>>  enable_on_exec=0
>>>  read_format=15
>>>  optional=1
>>>  
>>> -# PERF_TYPE_RAW / topdown-heavy-ops (0x8400)
>>> +# PERF_TYPE_RAW / INT_MISC.UOP_DROPPING
>>>  [event16:base-stat]
>>>  fd=16
>>> -group_fd=11
>>>  type=4
>>> -config=33792
>>> -disabled=0
>>> -enable_on_exec=0
>>> -read_format=15
>>> +config=4109
>>>  optional=1
>>>  
>>> -# PERF_TYPE_RAW / topdown-br-mispredict (0x8500)
>>> +# PERF_TYPE_RAW / cpu/INT_MISC.RECOVERY_CYCLES,cmask=1,edge/
>>>  [event17:base-stat]
>>>  fd=17
>>> -group_fd=11
>>>  type=4
>>> -config=34048
>>> -disabled=0
>>> -enable_on_exec=0
>>> -read_format=15
>>> +config=17039629
>>>  optional=1
>>>  
>>> -# PERF_TYPE_RAW / topdown-fetch-lat (0x8600)
>>> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.THREAD
>>>  [event18:base-stat]
>>>  fd=18
>>> -group_fd=11
>>>  type=4
>>> -config=34304
>>> -disabled=0
>>> -enable_on_exec=0
>>> -read_format=15
>>> +config=60
>>>  optional=1
>>>  
>>> -# PERF_TYPE_RAW / topdown-mem-bound (0x8700)
>>> +# PERF_TYPE_RAW / INT_MISC.RECOVERY_CYCLES_ANY
>>>  [event19:base-stat]
>>>  fd=19
>>> -group_fd=11
>>>  type=4
>>> -config=34560
>>> -disabled=0
>>> -enable_on_exec=0
>>> -read_format=15
>>> +config=2097421
>>> +optional=1
>>> +
>>> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.REF_XCLK
>>> +[event20:base-stat]
>>> +fd=20
>>> +type=4
>>> +config=316
>>> +optional=1
>>> +
>>> +# PERF_TYPE_RAW / IDQ_UOPS_NOT_DELIVERED.CORE
>>> +[event21:base-stat]
>>> +fd=21
>>> +type=4
>>> +config=412
>>> +optional=1
>>> +
>>> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.ONE_THREAD_ACTIVE
>>> +[event22:base-stat]
>>> +fd=22
>>> +type=4
>>> +config=572
>>> +optional=1
>>> +
>>> +# PERF_TYPE_RAW / UOPS_RETIRED.RETIRE_SLOTS
>>> +[event23:base-stat]
>>> +fd=23
>>> +type=4
>>> +config=706
>>> +optional=1
>>> +
>>> +# PERF_TYPE_RAW / UOPS_ISSUED.ANY
>>> +[event24:base-stat]
>>> +fd=24
>>> +type=4
>>> +config=270
>>>  optional=1
>>>  
>>>  # PERF_TYPE_HW_CACHE /
>>>  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
>>> -[event20:base-stat]
>>> -fd=20
>>> +[event25:base-stat]
>>> +fd=25
>>>  type=3
>>>  config=0
>>>  optional=1
>>> @@ -181,8 +200,8 @@ optional=1
>>>  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
>>> -[event21:base-stat]
>>> -fd=21
>>> +[event26:base-stat]
>>> +fd=26
>>>  type=3
>>>  config=65536
>>>  optional=1
>>> @@ -191,8 +210,8 @@ optional=1
>>>  #  PERF_COUNT_HW_CACHE_LL                 <<  0  |
>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
>>> -[event22:base-stat]
>>> -fd=22
>>> +[event27:base-stat]
>>> +fd=27
>>>  type=3
>>>  config=2
>>>  optional=1
>>> @@ -201,8 +220,8 @@ optional=1
>>>  #  PERF_COUNT_HW_CACHE_LL                 <<  0  |
>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
>>> -[event23:base-stat]
>>> -fd=23
>>> +[event28:base-stat]
>>> +fd=28
>>>  type=3
>>>  config=65538
>>>  optional=1
>>> @@ -211,8 +230,8 @@ optional=1
>>>  #  PERF_COUNT_HW_CACHE_L1I                <<  0  |
>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
>>> -[event24:base-stat]
>>> -fd=24
>>> +[event29:base-stat]
>>> +fd=29
>>>  type=3
>>>  config=1
>>>  optional=1
>>> @@ -221,8 +240,8 @@ optional=1
>>>  #  PERF_COUNT_HW_CACHE_L1I                <<  0  |
>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
>>> -[event25:base-stat]
>>> -fd=25
>>> +[event30:base-stat]
>>> +fd=30
>>>  type=3
>>>  config=65537
>>>  optional=1
>>> @@ -231,8 +250,8 @@ optional=1
>>>  #  PERF_COUNT_HW_CACHE_DTLB               <<  0  |
>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
>>> -[event26:base-stat]
>>> -fd=26
>>> +[event31:base-stat]
>>> +fd=31
>>>  type=3
>>>  config=3
>>>  optional=1
>>> @@ -241,8 +260,8 @@ optional=1
>>>  #  PERF_COUNT_HW_CACHE_DTLB               <<  0  |
>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
>>> -[event27:base-stat]
>>> -fd=27
>>> +[event32:base-stat]
>>> +fd=32
>>>  type=3
>>>  config=65539
>>>  optional=1
>>> @@ -251,8 +270,8 @@ optional=1
>>>  #  PERF_COUNT_HW_CACHE_ITLB               <<  0  |
>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
>>> -[event28:base-stat]
>>> -fd=28
>>> +[event33:base-stat]
>>> +fd=33
>>>  type=3
>>>  config=4
>>>  optional=1
>>> @@ -261,8 +280,8 @@ optional=1
>>>  #  PERF_COUNT_HW_CACHE_ITLB               <<  0  |
>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
>>> -[event29:base-stat]
>>> -fd=29
>>> +[event34:base-stat]
>>> +fd=34
>>>  type=3
>>>  config=65540
>>>  optional=1
>>> diff --git a/tools/perf/tests/attr/test-stat-detailed-3 b/tools/perf/tests/attr/test-stat-detailed-3
>>> index d555042e3fbf..e50535f45977 100644
>>> --- a/tools/perf/tests/attr/test-stat-detailed-3
>>> +++ b/tools/perf/tests/attr/test-stat-detailed-3
>>> @@ -90,89 +90,108 @@ enable_on_exec=0
>>>  read_format=15
>>>  optional=1
>>>  
>>> -# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
>>> +# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
>>>  [event13:base-stat]
>>>  fd=13
>>>  group_fd=11
>>>  type=4
>>> -config=33024
>>> +config=33280
>>>  disabled=0
>>>  enable_on_exec=0
>>>  read_format=15
>>>  optional=1
>>>  
>>> -# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
>>> +# PERF_TYPE_RAW / topdown-be-bound (0x8300)
>>>  [event14:base-stat]
>>>  fd=14
>>>  group_fd=11
>>>  type=4
>>> -config=33280
>>> +config=33536
>>>  disabled=0
>>>  enable_on_exec=0
>>>  read_format=15
>>>  optional=1
>>>  
>>> -# PERF_TYPE_RAW / topdown-be-bound (0x8300)
>>> +# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
>>>  [event15:base-stat]
>>>  fd=15
>>>  group_fd=11
>>>  type=4
>>> -config=33536
>>> +config=33024
>>>  disabled=0
>>>  enable_on_exec=0
>>>  read_format=15
>>>  optional=1
>>>  
>>> -# PERF_TYPE_RAW / topdown-heavy-ops (0x8400)
>>> +# PERF_TYPE_RAW / INT_MISC.UOP_DROPPING
>>>  [event16:base-stat]
>>>  fd=16
>>> -group_fd=11
>>>  type=4
>>> -config=33792
>>> -disabled=0
>>> -enable_on_exec=0
>>> -read_format=15
>>> +config=4109
>>>  optional=1
>>>  
>>> -# PERF_TYPE_RAW / topdown-br-mispredict (0x8500)
>>> +# PERF_TYPE_RAW / cpu/INT_MISC.RECOVERY_CYCLES,cmask=1,edge/
>>>  [event17:base-stat]
>>>  fd=17
>>> -group_fd=11
>>>  type=4
>>> -config=34048
>>> -disabled=0
>>> -enable_on_exec=0
>>> -read_format=15
>>> +config=17039629
>>>  optional=1
>>>  
>>> -# PERF_TYPE_RAW / topdown-fetch-lat (0x8600)
>>> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.THREAD
>>>  [event18:base-stat]
>>>  fd=18
>>> -group_fd=11
>>>  type=4
>>> -config=34304
>>> -disabled=0
>>> -enable_on_exec=0
>>> -read_format=15
>>> +config=60
>>>  optional=1
>>>  
>>> -# PERF_TYPE_RAW / topdown-mem-bound (0x8700)
>>> +# PERF_TYPE_RAW / INT_MISC.RECOVERY_CYCLES_ANY
>>>  [event19:base-stat]
>>>  fd=19
>>> -group_fd=11
>>>  type=4
>>> -config=34560
>>> -disabled=0
>>> -enable_on_exec=0
>>> -read_format=15
>>> +config=2097421
>>> +optional=1
>>> +
>>> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.REF_XCLK
>>> +[event20:base-stat]
>>> +fd=20
>>> +type=4
>>> +config=316
>>> +optional=1
>>> +
>>> +# PERF_TYPE_RAW / IDQ_UOPS_NOT_DELIVERED.CORE
>>> +[event21:base-stat]
>>> +fd=21
>>> +type=4
>>> +config=412
>>> +optional=1
>>> +
>>> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.ONE_THREAD_ACTIVE
>>> +[event22:base-stat]
>>> +fd=22
>>> +type=4
>>> +config=572
>>> +optional=1
>>> +
>>> +# PERF_TYPE_RAW / UOPS_RETIRED.RETIRE_SLOTS
>>> +[event23:base-stat]
>>> +fd=23
>>> +type=4
>>> +config=706
>>> +optional=1
>>> +
>>> +# PERF_TYPE_RAW / UOPS_ISSUED.ANY
>>> +[event24:base-stat]
>>> +fd=24
>>> +type=4
>>> +config=270
>>>  optional=1
>>>  
>>>  # PERF_TYPE_HW_CACHE /
>>>  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
>>> -[event20:base-stat]
>>> -fd=20
>>> +[event25:base-stat]
>>> +fd=25
>>>  type=3
>>>  config=0
>>>  optional=1
>>> @@ -181,8 +200,8 @@ optional=1
>>>  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
>>> -[event21:base-stat]
>>> -fd=21
>>> +[event26:base-stat]
>>> +fd=26
>>>  type=3
>>>  config=65536
>>>  optional=1
>>> @@ -191,8 +210,8 @@ optional=1
>>>  #  PERF_COUNT_HW_CACHE_LL                 <<  0  |
>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
>>> -[event22:base-stat]
>>> -fd=22
>>> +[event27:base-stat]
>>> +fd=27
>>>  type=3
>>>  config=2
>>>  optional=1
>>> @@ -201,8 +220,8 @@ optional=1
>>>  #  PERF_COUNT_HW_CACHE_LL                 <<  0  |
>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
>>> -[event23:base-stat]
>>> -fd=23
>>> +[event28:base-stat]
>>> +fd=28
>>>  type=3
>>>  config=65538
>>>  optional=1
>>> @@ -211,8 +230,8 @@ optional=1
>>>  #  PERF_COUNT_HW_CACHE_L1I                <<  0  |
>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
>>> -[event24:base-stat]
>>> -fd=24
>>> +[event29:base-stat]
>>> +fd=29
>>>  type=3
>>>  config=1
>>>  optional=1
>>> @@ -221,8 +240,8 @@ optional=1
>>>  #  PERF_COUNT_HW_CACHE_L1I                <<  0  |
>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
>>> -[event25:base-stat]
>>> -fd=25
>>> +[event30:base-stat]
>>> +fd=30
>>>  type=3
>>>  config=65537
>>>  optional=1
>>> @@ -231,8 +250,8 @@ optional=1
>>>  #  PERF_COUNT_HW_CACHE_DTLB               <<  0  |
>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
>>> -[event26:base-stat]
>>> -fd=26
>>> +[event31:base-stat]
>>> +fd=31
>>>  type=3
>>>  config=3
>>>  optional=1
>>> @@ -241,8 +260,8 @@ optional=1
>>>  #  PERF_COUNT_HW_CACHE_DTLB               <<  0  |
>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
>>> -[event27:base-stat]
>>> -fd=27
>>> +[event32:base-stat]
>>> +fd=32
>>>  type=3
>>>  config=65539
>>>  optional=1
>>> @@ -251,8 +270,8 @@ optional=1
>>>  #  PERF_COUNT_HW_CACHE_ITLB               <<  0  |
>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
>>> -[event28:base-stat]
>>> -fd=28
>>> +[event33:base-stat]
>>> +fd=33
>>>  type=3
>>>  config=4
>>>  optional=1
>>> @@ -261,8 +280,8 @@ optional=1
>>>  #  PERF_COUNT_HW_CACHE_ITLB               <<  0  |
>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
>>> -[event29:base-stat]
>>> -fd=29
>>> +[event34:base-stat]
>>> +fd=34
>>>  type=3
>>>  config=65540
>>>  optional=1
>>> @@ -271,8 +290,8 @@ optional=1
>>>  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
>>>  # (PERF_COUNT_HW_CACHE_OP_PREFETCH        <<  8) |
>>>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
>>> -[event30:base-stat]
>>> -fd=30
>>> +[event35:base-stat]
>>> +fd=35
>>>  type=3
>>>  config=512
>>>  optional=1
>>> @@ -281,8 +300,8 @@ optional=1
>>>  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
>>>  # (PERF_COUNT_HW_CACHE_OP_PREFETCH        <<  8) |
>>>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
>>> -[event31:base-stat]
>>> -fd=31
>>> +[event36:base-stat]
>>> +fd=36
>>>  type=3
>>>  config=66048
>>>  optional=1
> 

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH v1 1/2] perf test attr: Update no event/metric expectations
  2023-05-17 22:57 [PATCH v1 1/2] perf test attr: Update no event/metric expectations Ian Rogers
  2023-05-17 22:57 ` [PATCH v1 2/2] perf test attr: Fix deprecation warning Ian Rogers
  2023-05-18  7:50 ` [PATCH v1 1/2] perf test attr: Update no event/metric expectations James Clark
@ 2023-05-18 13:01 ` Liang, Kan
  2023-05-18 14:10   ` Ian Rogers
  2 siblings, 1 reply; 14+ messages in thread
From: Liang, Kan @ 2023-05-18 13:01 UTC (permalink / raw)
  To: Ian Rogers, Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo,
	Mark Rutland, Alexander Shishkin, Jiri Olsa, Namhyung Kim,
	Adrian Hunter, James Clark, Thomas Richter, linux-perf-users,
	linux-kernel



On 2023-05-17 6:57 p.m., Ian Rogers wrote:
> Previously hard coded events/metrics were used, update for the use of
> the TopdownL1 json metric group.
> 
> Fixes: 94b1a603fca7 ("perf stat: Add TopdownL1 metric as a default if present")
> Signed-off-by: Ian Rogers <irogers@google.com>
> ---
>  tools/perf/tests/attr/base-stat            |   2 +-
>  tools/perf/tests/attr/test-stat-default    |  80 ++++++++-----
>  tools/perf/tests/attr/test-stat-detailed-1 |  95 +++++++++------
>  tools/perf/tests/attr/test-stat-detailed-2 | 119 +++++++++++--------
>  tools/perf/tests/attr/test-stat-detailed-3 | 127 ++++++++++++---------
>  5 files changed, 249 insertions(+), 174 deletions(-)
> 
> diff --git a/tools/perf/tests/attr/base-stat b/tools/perf/tests/attr/base-stat
> index a21fb65bc012..fccd8ec4d1b0 100644
> --- a/tools/perf/tests/attr/base-stat
> +++ b/tools/perf/tests/attr/base-stat
> @@ -16,7 +16,7 @@ pinned=0
>  exclusive=0
>  exclude_user=0
>  exclude_kernel=0|1
> -exclude_hv=0
> +exclude_hv=0|1
>  exclude_idle=0
>  mmap=0
>  comm=0
> diff --git a/tools/perf/tests/attr/test-stat-default b/tools/perf/tests/attr/test-stat-default
> index d8ea6a88163f..a1e2da0a9a6d 100644
> --- a/tools/perf/tests/attr/test-stat-default
> +++ b/tools/perf/tests/attr/test-stat-default
> @@ -40,7 +40,6 @@ fd=6
>  type=0
>  config=7
>  optional=1
> -
>  # PERF_TYPE_HARDWARE / PERF_COUNT_HW_STALLED_CYCLES_BACKEND
>  [event7:base-stat]
>  fd=7
> @@ -89,79 +88,98 @@ enable_on_exec=0
>  read_format=15
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
> +# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
>  [event13:base-stat]
>  fd=13
>  group_fd=11
>  type=4
> -config=33024
> +config=33280
>  disabled=0
>  enable_on_exec=0
>  read_format=15
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
> +# PERF_TYPE_RAW / topdown-be-bound (0x8300)
>  [event14:base-stat]
>  fd=14
>  group_fd=11
>  type=4
> -config=33280
> +config=33536
>  disabled=0
>  enable_on_exec=0
>  read_format=15
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-be-bound (0x8300)
> +# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
>  [event15:base-stat]
>  fd=15
>  group_fd=11
>  type=4
> -config=33536
> +config=33024
>  disabled=0
>  enable_on_exec=0
>  read_format=15
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-heavy-ops (0x8400)
> +# PERF_TYPE_RAW / INT_MISC.UOP_DROPPING
>  [event16:base-stat]
>  fd=16
> -group_fd=11
>  type=4
> -config=33792
> -disabled=0
> -enable_on_exec=0
> -read_format=15
> +config=4109
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-br-mispredict (0x8500)
> +# PERF_TYPE_RAW / cpu/INT_MISC.RECOVERY_CYCLES,cmask=1,edge/
>  [event17:base-stat]
>  fd=17
> -group_fd=11
>  type=4
> -config=34048
> -disabled=0
> -enable_on_exec=0
> -read_format=15
> +config=17039629
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-fetch-lat (0x8600)
> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.THREAD
>  [event18:base-stat]
>  fd=18
> -group_fd=11
>  type=4
> -config=34304
> -disabled=0
> -enable_on_exec=0
> -read_format=15
> +config=60
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-mem-bound (0x8700)
> +# PERF_TYPE_RAW / INT_MISC.RECOVERY_CYCLES_ANY
>  [event19:base-stat]
>  fd=19
> -group_fd=11
>  type=4
> -config=34560
> -disabled=0
> -enable_on_exec=0
> -read_format=15
> +config=2097421
> +optional=1
> +
> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.REF_XCLK
> +[event20:base-stat]
> +fd=20
> +type=4
> +config=316
> +optional=1
> +
> +# PERF_TYPE_RAW / IDQ_UOPS_NOT_DELIVERED.CORE
> +[event21:base-stat]
> +fd=21
> +type=4
> +config=412
> +optional=1
> +
> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.ONE_THREAD_ACTIVE
> +[event22:base-stat]
> +fd=22
> +type=4
> +config=572
> +optional=1
> +
> +# PERF_TYPE_RAW / UOPS_RETIRED.RETIRE_SLOTS


Most of the newly added events are non-architectural events. The event
name and the encoding could be changed later. I don't think it's a good
idea to hard code them in the test. Could we read the TopdownL1 metrics,
get a event list at runtime, and then only test those events?

Thanks,
Kan

> +[event23:base-stat]
> +fd=23
> +type=4
> +config=706
> +optional=1
> +
> +# PERF_TYPE_RAW / UOPS_ISSUED.ANY
> +[event24:base-stat]
> +fd=24
> +type=4
> +config=270
>  optional=1
> diff --git a/tools/perf/tests/attr/test-stat-detailed-1 b/tools/perf/tests/attr/test-stat-detailed-1
> index b656ab93c5bf..1c52cb05c900 100644
> --- a/tools/perf/tests/attr/test-stat-detailed-1
> +++ b/tools/perf/tests/attr/test-stat-detailed-1
> @@ -90,89 +90,108 @@ enable_on_exec=0
>  read_format=15
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
> +# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
>  [event13:base-stat]
>  fd=13
>  group_fd=11
>  type=4
> -config=33024
> +config=33280
>  disabled=0
>  enable_on_exec=0
>  read_format=15
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
> +# PERF_TYPE_RAW / topdown-be-bound (0x8300)
>  [event14:base-stat]
>  fd=14
>  group_fd=11
>  type=4
> -config=33280
> +config=33536
>  disabled=0
>  enable_on_exec=0
>  read_format=15
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-be-bound (0x8300)
> +# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
>  [event15:base-stat]
>  fd=15
>  group_fd=11
>  type=4
> -config=33536
> +config=33024
>  disabled=0
>  enable_on_exec=0
>  read_format=15
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-heavy-ops (0x8400)
> +# PERF_TYPE_RAW / INT_MISC.UOP_DROPPING
>  [event16:base-stat]
>  fd=16
> -group_fd=11
>  type=4
> -config=33792
> -disabled=0
> -enable_on_exec=0
> -read_format=15
> +config=4109
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-br-mispredict (0x8500)
> +# PERF_TYPE_RAW / cpu/INT_MISC.RECOVERY_CYCLES,cmask=1,edge/
>  [event17:base-stat]
>  fd=17
> -group_fd=11
>  type=4
> -config=34048
> -disabled=0
> -enable_on_exec=0
> -read_format=15
> +config=17039629
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-fetch-lat (0x8600)
> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.THREAD
>  [event18:base-stat]
>  fd=18
> -group_fd=11
>  type=4
> -config=34304
> -disabled=0
> -enable_on_exec=0
> -read_format=15
> +config=60
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-mem-bound (0x8700)
> +# PERF_TYPE_RAW / INT_MISC.RECOVERY_CYCLES_ANY
>  [event19:base-stat]
>  fd=19
> -group_fd=11
>  type=4
> -config=34560
> -disabled=0
> -enable_on_exec=0
> -read_format=15
> +config=2097421
> +optional=1
> +
> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.REF_XCLK
> +[event20:base-stat]
> +fd=20
> +type=4
> +config=316
> +optional=1
> +
> +# PERF_TYPE_RAW / IDQ_UOPS_NOT_DELIVERED.CORE
> +[event21:base-stat]
> +fd=21
> +type=4
> +config=412
> +optional=1
> +
> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.ONE_THREAD_ACTIVE
> +[event22:base-stat]
> +fd=22
> +type=4
> +config=572
> +optional=1
> +
> +# PERF_TYPE_RAW / UOPS_RETIRED.RETIRE_SLOTS
> +[event23:base-stat]
> +fd=23
> +type=4
> +config=706
> +optional=1
> +
> +# PERF_TYPE_RAW / UOPS_ISSUED.ANY
> +[event24:base-stat]
> +fd=24
> +type=4
> +config=270
>  optional=1
>  
>  # PERF_TYPE_HW_CACHE /
>  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> -[event20:base-stat]
> -fd=20
> +[event25:base-stat]
> +fd=25
>  type=3
>  config=0
>  optional=1
> @@ -181,8 +200,8 @@ optional=1
>  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> -[event21:base-stat]
> -fd=21
> +[event26:base-stat]
> +fd=26
>  type=3
>  config=65536
>  optional=1
> @@ -191,8 +210,8 @@ optional=1
>  #  PERF_COUNT_HW_CACHE_LL                 <<  0  |
>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> -[event22:base-stat]
> -fd=22
> +[event27:base-stat]
> +fd=27
>  type=3
>  config=2
>  optional=1
> @@ -201,8 +220,8 @@ optional=1
>  #  PERF_COUNT_HW_CACHE_LL                 <<  0  |
>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> -[event23:base-stat]
> -fd=23
> +[event28:base-stat]
> +fd=28
>  type=3
>  config=65538
>  optional=1
> diff --git a/tools/perf/tests/attr/test-stat-detailed-2 b/tools/perf/tests/attr/test-stat-detailed-2
> index 97625090a1c4..7e961d24a885 100644
> --- a/tools/perf/tests/attr/test-stat-detailed-2
> +++ b/tools/perf/tests/attr/test-stat-detailed-2
> @@ -90,89 +90,108 @@ enable_on_exec=0
>  read_format=15
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
> +# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
>  [event13:base-stat]
>  fd=13
>  group_fd=11
>  type=4
> -config=33024
> +config=33280
>  disabled=0
>  enable_on_exec=0
>  read_format=15
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
> +# PERF_TYPE_RAW / topdown-be-bound (0x8300)
>  [event14:base-stat]
>  fd=14
>  group_fd=11
>  type=4
> -config=33280
> +config=33536
>  disabled=0
>  enable_on_exec=0
>  read_format=15
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-be-bound (0x8300)
> +# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
>  [event15:base-stat]
>  fd=15
>  group_fd=11
>  type=4
> -config=33536
> +config=33024
>  disabled=0
>  enable_on_exec=0
>  read_format=15
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-heavy-ops (0x8400)
> +# PERF_TYPE_RAW / INT_MISC.UOP_DROPPING
>  [event16:base-stat]
>  fd=16
> -group_fd=11
>  type=4
> -config=33792
> -disabled=0
> -enable_on_exec=0
> -read_format=15
> +config=4109
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-br-mispredict (0x8500)
> +# PERF_TYPE_RAW / cpu/INT_MISC.RECOVERY_CYCLES,cmask=1,edge/
>  [event17:base-stat]
>  fd=17
> -group_fd=11
>  type=4
> -config=34048
> -disabled=0
> -enable_on_exec=0
> -read_format=15
> +config=17039629
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-fetch-lat (0x8600)
> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.THREAD
>  [event18:base-stat]
>  fd=18
> -group_fd=11
>  type=4
> -config=34304
> -disabled=0
> -enable_on_exec=0
> -read_format=15
> +config=60
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-mem-bound (0x8700)
> +# PERF_TYPE_RAW / INT_MISC.RECOVERY_CYCLES_ANY
>  [event19:base-stat]
>  fd=19
> -group_fd=11
>  type=4
> -config=34560
> -disabled=0
> -enable_on_exec=0
> -read_format=15
> +config=2097421
> +optional=1
> +
> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.REF_XCLK
> +[event20:base-stat]
> +fd=20
> +type=4
> +config=316
> +optional=1
> +
> +# PERF_TYPE_RAW / IDQ_UOPS_NOT_DELIVERED.CORE
> +[event21:base-stat]
> +fd=21
> +type=4
> +config=412
> +optional=1
> +
> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.ONE_THREAD_ACTIVE
> +[event22:base-stat]
> +fd=22
> +type=4
> +config=572
> +optional=1
> +
> +# PERF_TYPE_RAW / UOPS_RETIRED.RETIRE_SLOTS
> +[event23:base-stat]
> +fd=23
> +type=4
> +config=706
> +optional=1
> +
> +# PERF_TYPE_RAW / UOPS_ISSUED.ANY
> +[event24:base-stat]
> +fd=24
> +type=4
> +config=270
>  optional=1
>  
>  # PERF_TYPE_HW_CACHE /
>  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> -[event20:base-stat]
> -fd=20
> +[event25:base-stat]
> +fd=25
>  type=3
>  config=0
>  optional=1
> @@ -181,8 +200,8 @@ optional=1
>  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> -[event21:base-stat]
> -fd=21
> +[event26:base-stat]
> +fd=26
>  type=3
>  config=65536
>  optional=1
> @@ -191,8 +210,8 @@ optional=1
>  #  PERF_COUNT_HW_CACHE_LL                 <<  0  |
>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> -[event22:base-stat]
> -fd=22
> +[event27:base-stat]
> +fd=27
>  type=3
>  config=2
>  optional=1
> @@ -201,8 +220,8 @@ optional=1
>  #  PERF_COUNT_HW_CACHE_LL                 <<  0  |
>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> -[event23:base-stat]
> -fd=23
> +[event28:base-stat]
> +fd=28
>  type=3
>  config=65538
>  optional=1
> @@ -211,8 +230,8 @@ optional=1
>  #  PERF_COUNT_HW_CACHE_L1I                <<  0  |
>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> -[event24:base-stat]
> -fd=24
> +[event29:base-stat]
> +fd=29
>  type=3
>  config=1
>  optional=1
> @@ -221,8 +240,8 @@ optional=1
>  #  PERF_COUNT_HW_CACHE_L1I                <<  0  |
>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> -[event25:base-stat]
> -fd=25
> +[event30:base-stat]
> +fd=30
>  type=3
>  config=65537
>  optional=1
> @@ -231,8 +250,8 @@ optional=1
>  #  PERF_COUNT_HW_CACHE_DTLB               <<  0  |
>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> -[event26:base-stat]
> -fd=26
> +[event31:base-stat]
> +fd=31
>  type=3
>  config=3
>  optional=1
> @@ -241,8 +260,8 @@ optional=1
>  #  PERF_COUNT_HW_CACHE_DTLB               <<  0  |
>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> -[event27:base-stat]
> -fd=27
> +[event32:base-stat]
> +fd=32
>  type=3
>  config=65539
>  optional=1
> @@ -251,8 +270,8 @@ optional=1
>  #  PERF_COUNT_HW_CACHE_ITLB               <<  0  |
>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> -[event28:base-stat]
> -fd=28
> +[event33:base-stat]
> +fd=33
>  type=3
>  config=4
>  optional=1
> @@ -261,8 +280,8 @@ optional=1
>  #  PERF_COUNT_HW_CACHE_ITLB               <<  0  |
>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> -[event29:base-stat]
> -fd=29
> +[event34:base-stat]
> +fd=34
>  type=3
>  config=65540
>  optional=1
> diff --git a/tools/perf/tests/attr/test-stat-detailed-3 b/tools/perf/tests/attr/test-stat-detailed-3
> index d555042e3fbf..e50535f45977 100644
> --- a/tools/perf/tests/attr/test-stat-detailed-3
> +++ b/tools/perf/tests/attr/test-stat-detailed-3
> @@ -90,89 +90,108 @@ enable_on_exec=0
>  read_format=15
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
> +# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
>  [event13:base-stat]
>  fd=13
>  group_fd=11
>  type=4
> -config=33024
> +config=33280
>  disabled=0
>  enable_on_exec=0
>  read_format=15
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
> +# PERF_TYPE_RAW / topdown-be-bound (0x8300)
>  [event14:base-stat]
>  fd=14
>  group_fd=11
>  type=4
> -config=33280
> +config=33536
>  disabled=0
>  enable_on_exec=0
>  read_format=15
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-be-bound (0x8300)
> +# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
>  [event15:base-stat]
>  fd=15
>  group_fd=11
>  type=4
> -config=33536
> +config=33024
>  disabled=0
>  enable_on_exec=0
>  read_format=15
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-heavy-ops (0x8400)
> +# PERF_TYPE_RAW / INT_MISC.UOP_DROPPING
>  [event16:base-stat]
>  fd=16
> -group_fd=11
>  type=4
> -config=33792
> -disabled=0
> -enable_on_exec=0
> -read_format=15
> +config=4109
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-br-mispredict (0x8500)
> +# PERF_TYPE_RAW / cpu/INT_MISC.RECOVERY_CYCLES,cmask=1,edge/
>  [event17:base-stat]
>  fd=17
> -group_fd=11
>  type=4
> -config=34048
> -disabled=0
> -enable_on_exec=0
> -read_format=15
> +config=17039629
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-fetch-lat (0x8600)
> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.THREAD
>  [event18:base-stat]
>  fd=18
> -group_fd=11
>  type=4
> -config=34304
> -disabled=0
> -enable_on_exec=0
> -read_format=15
> +config=60
>  optional=1
>  
> -# PERF_TYPE_RAW / topdown-mem-bound (0x8700)
> +# PERF_TYPE_RAW / INT_MISC.RECOVERY_CYCLES_ANY
>  [event19:base-stat]
>  fd=19
> -group_fd=11
>  type=4
> -config=34560
> -disabled=0
> -enable_on_exec=0
> -read_format=15
> +config=2097421
> +optional=1
> +
> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.REF_XCLK
> +[event20:base-stat]
> +fd=20
> +type=4
> +config=316
> +optional=1
> +
> +# PERF_TYPE_RAW / IDQ_UOPS_NOT_DELIVERED.CORE
> +[event21:base-stat]
> +fd=21
> +type=4
> +config=412
> +optional=1
> +
> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.ONE_THREAD_ACTIVE
> +[event22:base-stat]
> +fd=22
> +type=4
> +config=572
> +optional=1
> +
> +# PERF_TYPE_RAW / UOPS_RETIRED.RETIRE_SLOTS
> +[event23:base-stat]
> +fd=23
> +type=4
> +config=706
> +optional=1
> +
> +# PERF_TYPE_RAW / UOPS_ISSUED.ANY
> +[event24:base-stat]
> +fd=24
> +type=4
> +config=270
>  optional=1
>  
>  # PERF_TYPE_HW_CACHE /
>  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> -[event20:base-stat]
> -fd=20
> +[event25:base-stat]
> +fd=25
>  type=3
>  config=0
>  optional=1
> @@ -181,8 +200,8 @@ optional=1
>  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> -[event21:base-stat]
> -fd=21
> +[event26:base-stat]
> +fd=26
>  type=3
>  config=65536
>  optional=1
> @@ -191,8 +210,8 @@ optional=1
>  #  PERF_COUNT_HW_CACHE_LL                 <<  0  |
>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> -[event22:base-stat]
> -fd=22
> +[event27:base-stat]
> +fd=27
>  type=3
>  config=2
>  optional=1
> @@ -201,8 +220,8 @@ optional=1
>  #  PERF_COUNT_HW_CACHE_LL                 <<  0  |
>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> -[event23:base-stat]
> -fd=23
> +[event28:base-stat]
> +fd=28
>  type=3
>  config=65538
>  optional=1
> @@ -211,8 +230,8 @@ optional=1
>  #  PERF_COUNT_HW_CACHE_L1I                <<  0  |
>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> -[event24:base-stat]
> -fd=24
> +[event29:base-stat]
> +fd=29
>  type=3
>  config=1
>  optional=1
> @@ -221,8 +240,8 @@ optional=1
>  #  PERF_COUNT_HW_CACHE_L1I                <<  0  |
>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> -[event25:base-stat]
> -fd=25
> +[event30:base-stat]
> +fd=30
>  type=3
>  config=65537
>  optional=1
> @@ -231,8 +250,8 @@ optional=1
>  #  PERF_COUNT_HW_CACHE_DTLB               <<  0  |
>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> -[event26:base-stat]
> -fd=26
> +[event31:base-stat]
> +fd=31
>  type=3
>  config=3
>  optional=1
> @@ -241,8 +260,8 @@ optional=1
>  #  PERF_COUNT_HW_CACHE_DTLB               <<  0  |
>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> -[event27:base-stat]
> -fd=27
> +[event32:base-stat]
> +fd=32
>  type=3
>  config=65539
>  optional=1
> @@ -251,8 +270,8 @@ optional=1
>  #  PERF_COUNT_HW_CACHE_ITLB               <<  0  |
>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> -[event28:base-stat]
> -fd=28
> +[event33:base-stat]
> +fd=33
>  type=3
>  config=4
>  optional=1
> @@ -261,8 +280,8 @@ optional=1
>  #  PERF_COUNT_HW_CACHE_ITLB               <<  0  |
>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> -[event29:base-stat]
> -fd=29
> +[event34:base-stat]
> +fd=34
>  type=3
>  config=65540
>  optional=1
> @@ -271,8 +290,8 @@ optional=1
>  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
>  # (PERF_COUNT_HW_CACHE_OP_PREFETCH        <<  8) |
>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> -[event30:base-stat]
> -fd=30
> +[event35:base-stat]
> +fd=35
>  type=3
>  config=512
>  optional=1
> @@ -281,8 +300,8 @@ optional=1
>  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
>  # (PERF_COUNT_HW_CACHE_OP_PREFETCH        <<  8) |
>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> -[event31:base-stat]
> -fd=31
> +[event36:base-stat]
> +fd=36
>  type=3
>  config=66048
>  optional=1

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH v1 1/2] perf test attr: Update no event/metric expectations
  2023-05-18 13:01 ` Liang, Kan
@ 2023-05-18 14:10   ` Ian Rogers
  2023-05-18 14:40     ` Liang, Kan
  0 siblings, 1 reply; 14+ messages in thread
From: Ian Rogers @ 2023-05-18 14:10 UTC (permalink / raw)
  To: Liang, Kan
  Cc: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo,
	Mark Rutland, Alexander Shishkin, Jiri Olsa, Namhyung Kim,
	Adrian Hunter, James Clark, Thomas Richter, linux-perf-users,
	linux-kernel

On Thu, May 18, 2023 at 6:01 AM Liang, Kan <kan.liang@linux.intel.com> wrote:
>
>
>
> On 2023-05-17 6:57 p.m., Ian Rogers wrote:
> > Previously hard coded events/metrics were used, update for the use of
> > the TopdownL1 json metric group.
> >
> > Fixes: 94b1a603fca7 ("perf stat: Add TopdownL1 metric as a default if present")
> > Signed-off-by: Ian Rogers <irogers@google.com>
> > ---
> >  tools/perf/tests/attr/base-stat            |   2 +-
> >  tools/perf/tests/attr/test-stat-default    |  80 ++++++++-----
> >  tools/perf/tests/attr/test-stat-detailed-1 |  95 +++++++++------
> >  tools/perf/tests/attr/test-stat-detailed-2 | 119 +++++++++++--------
> >  tools/perf/tests/attr/test-stat-detailed-3 | 127 ++++++++++++---------
> >  5 files changed, 249 insertions(+), 174 deletions(-)
> >
> > diff --git a/tools/perf/tests/attr/base-stat b/tools/perf/tests/attr/base-stat
> > index a21fb65bc012..fccd8ec4d1b0 100644
> > --- a/tools/perf/tests/attr/base-stat
> > +++ b/tools/perf/tests/attr/base-stat
> > @@ -16,7 +16,7 @@ pinned=0
> >  exclusive=0
> >  exclude_user=0
> >  exclude_kernel=0|1
> > -exclude_hv=0
> > +exclude_hv=0|1
> >  exclude_idle=0
> >  mmap=0
> >  comm=0
> > diff --git a/tools/perf/tests/attr/test-stat-default b/tools/perf/tests/attr/test-stat-default
> > index d8ea6a88163f..a1e2da0a9a6d 100644
> > --- a/tools/perf/tests/attr/test-stat-default
> > +++ b/tools/perf/tests/attr/test-stat-default
> > @@ -40,7 +40,6 @@ fd=6
> >  type=0
> >  config=7
> >  optional=1
> > -
> >  # PERF_TYPE_HARDWARE / PERF_COUNT_HW_STALLED_CYCLES_BACKEND
> >  [event7:base-stat]
> >  fd=7
> > @@ -89,79 +88,98 @@ enable_on_exec=0
> >  read_format=15
> >  optional=1
> >
> > -# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
> > +# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
> >  [event13:base-stat]
> >  fd=13
> >  group_fd=11
> >  type=4
> > -config=33024
> > +config=33280
> >  disabled=0
> >  enable_on_exec=0
> >  read_format=15
> >  optional=1
> >
> > -# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
> > +# PERF_TYPE_RAW / topdown-be-bound (0x8300)
> >  [event14:base-stat]
> >  fd=14
> >  group_fd=11
> >  type=4
> > -config=33280
> > +config=33536
> >  disabled=0
> >  enable_on_exec=0
> >  read_format=15
> >  optional=1
> >
> > -# PERF_TYPE_RAW / topdown-be-bound (0x8300)
> > +# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
> >  [event15:base-stat]
> >  fd=15
> >  group_fd=11
> >  type=4
> > -config=33536
> > +config=33024
> >  disabled=0
> >  enable_on_exec=0
> >  read_format=15
> >  optional=1
> >
> > -# PERF_TYPE_RAW / topdown-heavy-ops (0x8400)
> > +# PERF_TYPE_RAW / INT_MISC.UOP_DROPPING
> >  [event16:base-stat]
> >  fd=16
> > -group_fd=11
> >  type=4
> > -config=33792
> > -disabled=0
> > -enable_on_exec=0
> > -read_format=15
> > +config=4109
> >  optional=1
> >
> > -# PERF_TYPE_RAW / topdown-br-mispredict (0x8500)
> > +# PERF_TYPE_RAW / cpu/INT_MISC.RECOVERY_CYCLES,cmask=1,edge/
> >  [event17:base-stat]
> >  fd=17
> > -group_fd=11
> >  type=4
> > -config=34048
> > -disabled=0
> > -enable_on_exec=0
> > -read_format=15
> > +config=17039629
> >  optional=1
> >
> > -# PERF_TYPE_RAW / topdown-fetch-lat (0x8600)
> > +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.THREAD
> >  [event18:base-stat]
> >  fd=18
> > -group_fd=11
> >  type=4
> > -config=34304
> > -disabled=0
> > -enable_on_exec=0
> > -read_format=15
> > +config=60
> >  optional=1
> >
> > -# PERF_TYPE_RAW / topdown-mem-bound (0x8700)
> > +# PERF_TYPE_RAW / INT_MISC.RECOVERY_CYCLES_ANY
> >  [event19:base-stat]
> >  fd=19
> > -group_fd=11
> >  type=4
> > -config=34560
> > -disabled=0
> > -enable_on_exec=0
> > -read_format=15
> > +config=2097421
> > +optional=1
> > +
> > +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.REF_XCLK
> > +[event20:base-stat]
> > +fd=20
> > +type=4
> > +config=316
> > +optional=1
> > +
> > +# PERF_TYPE_RAW / IDQ_UOPS_NOT_DELIVERED.CORE
> > +[event21:base-stat]
> > +fd=21
> > +type=4
> > +config=412
> > +optional=1
> > +
> > +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.ONE_THREAD_ACTIVE
> > +[event22:base-stat]
> > +fd=22
> > +type=4
> > +config=572
> > +optional=1
> > +
> > +# PERF_TYPE_RAW / UOPS_RETIRED.RETIRE_SLOTS
>
>
> Most of the newly added events are non-architectural events. The event
> name and the encoding could be changed later. I don't think it's a good
> idea to hard code them in the test. Could we read the TopdownL1 metrics,
> get a event list at runtime, and then only test those events?

Not really, this test fix is targeting 6.4 which shouldn't be a moving
target. We can do something better in 6.5.

Fwiw, on hybrid you get events on 2 PMUs, possibly with the PMU type
encoded in the high part of the config. Let's see how hybrid dealt
with this test:
https://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git/tree/tools/perf/tests/attr.c?h=perf-tools#n188
Oh.

Thanks,
Ian

> Thanks,
> Kan
>
> > +[event23:base-stat]
> > +fd=23
> > +type=4
> > +config=706
> > +optional=1
> > +
> > +# PERF_TYPE_RAW / UOPS_ISSUED.ANY
> > +[event24:base-stat]
> > +fd=24
> > +type=4
> > +config=270
> >  optional=1
> > diff --git a/tools/perf/tests/attr/test-stat-detailed-1 b/tools/perf/tests/attr/test-stat-detailed-1
> > index b656ab93c5bf..1c52cb05c900 100644
> > --- a/tools/perf/tests/attr/test-stat-detailed-1
> > +++ b/tools/perf/tests/attr/test-stat-detailed-1
> > @@ -90,89 +90,108 @@ enable_on_exec=0
> >  read_format=15
> >  optional=1
> >
> > -# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
> > +# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
> >  [event13:base-stat]
> >  fd=13
> >  group_fd=11
> >  type=4
> > -config=33024
> > +config=33280
> >  disabled=0
> >  enable_on_exec=0
> >  read_format=15
> >  optional=1
> >
> > -# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
> > +# PERF_TYPE_RAW / topdown-be-bound (0x8300)
> >  [event14:base-stat]
> >  fd=14
> >  group_fd=11
> >  type=4
> > -config=33280
> > +config=33536
> >  disabled=0
> >  enable_on_exec=0
> >  read_format=15
> >  optional=1
> >
> > -# PERF_TYPE_RAW / topdown-be-bound (0x8300)
> > +# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
> >  [event15:base-stat]
> >  fd=15
> >  group_fd=11
> >  type=4
> > -config=33536
> > +config=33024
> >  disabled=0
> >  enable_on_exec=0
> >  read_format=15
> >  optional=1
> >
> > -# PERF_TYPE_RAW / topdown-heavy-ops (0x8400)
> > +# PERF_TYPE_RAW / INT_MISC.UOP_DROPPING
> >  [event16:base-stat]
> >  fd=16
> > -group_fd=11
> >  type=4
> > -config=33792
> > -disabled=0
> > -enable_on_exec=0
> > -read_format=15
> > +config=4109
> >  optional=1
> >
> > -# PERF_TYPE_RAW / topdown-br-mispredict (0x8500)
> > +# PERF_TYPE_RAW / cpu/INT_MISC.RECOVERY_CYCLES,cmask=1,edge/
> >  [event17:base-stat]
> >  fd=17
> > -group_fd=11
> >  type=4
> > -config=34048
> > -disabled=0
> > -enable_on_exec=0
> > -read_format=15
> > +config=17039629
> >  optional=1
> >
> > -# PERF_TYPE_RAW / topdown-fetch-lat (0x8600)
> > +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.THREAD
> >  [event18:base-stat]
> >  fd=18
> > -group_fd=11
> >  type=4
> > -config=34304
> > -disabled=0
> > -enable_on_exec=0
> > -read_format=15
> > +config=60
> >  optional=1
> >
> > -# PERF_TYPE_RAW / topdown-mem-bound (0x8700)
> > +# PERF_TYPE_RAW / INT_MISC.RECOVERY_CYCLES_ANY
> >  [event19:base-stat]
> >  fd=19
> > -group_fd=11
> >  type=4
> > -config=34560
> > -disabled=0
> > -enable_on_exec=0
> > -read_format=15
> > +config=2097421
> > +optional=1
> > +
> > +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.REF_XCLK
> > +[event20:base-stat]
> > +fd=20
> > +type=4
> > +config=316
> > +optional=1
> > +
> > +# PERF_TYPE_RAW / IDQ_UOPS_NOT_DELIVERED.CORE
> > +[event21:base-stat]
> > +fd=21
> > +type=4
> > +config=412
> > +optional=1
> > +
> > +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.ONE_THREAD_ACTIVE
> > +[event22:base-stat]
> > +fd=22
> > +type=4
> > +config=572
> > +optional=1
> > +
> > +# PERF_TYPE_RAW / UOPS_RETIRED.RETIRE_SLOTS
> > +[event23:base-stat]
> > +fd=23
> > +type=4
> > +config=706
> > +optional=1
> > +
> > +# PERF_TYPE_RAW / UOPS_ISSUED.ANY
> > +[event24:base-stat]
> > +fd=24
> > +type=4
> > +config=270
> >  optional=1
> >
> >  # PERF_TYPE_HW_CACHE /
> >  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
> >  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> > -[event20:base-stat]
> > -fd=20
> > +[event25:base-stat]
> > +fd=25
> >  type=3
> >  config=0
> >  optional=1
> > @@ -181,8 +200,8 @@ optional=1
> >  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
> >  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> > -[event21:base-stat]
> > -fd=21
> > +[event26:base-stat]
> > +fd=26
> >  type=3
> >  config=65536
> >  optional=1
> > @@ -191,8 +210,8 @@ optional=1
> >  #  PERF_COUNT_HW_CACHE_LL                 <<  0  |
> >  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> > -[event22:base-stat]
> > -fd=22
> > +[event27:base-stat]
> > +fd=27
> >  type=3
> >  config=2
> >  optional=1
> > @@ -201,8 +220,8 @@ optional=1
> >  #  PERF_COUNT_HW_CACHE_LL                 <<  0  |
> >  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> > -[event23:base-stat]
> > -fd=23
> > +[event28:base-stat]
> > +fd=28
> >  type=3
> >  config=65538
> >  optional=1
> > diff --git a/tools/perf/tests/attr/test-stat-detailed-2 b/tools/perf/tests/attr/test-stat-detailed-2
> > index 97625090a1c4..7e961d24a885 100644
> > --- a/tools/perf/tests/attr/test-stat-detailed-2
> > +++ b/tools/perf/tests/attr/test-stat-detailed-2
> > @@ -90,89 +90,108 @@ enable_on_exec=0
> >  read_format=15
> >  optional=1
> >
> > -# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
> > +# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
> >  [event13:base-stat]
> >  fd=13
> >  group_fd=11
> >  type=4
> > -config=33024
> > +config=33280
> >  disabled=0
> >  enable_on_exec=0
> >  read_format=15
> >  optional=1
> >
> > -# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
> > +# PERF_TYPE_RAW / topdown-be-bound (0x8300)
> >  [event14:base-stat]
> >  fd=14
> >  group_fd=11
> >  type=4
> > -config=33280
> > +config=33536
> >  disabled=0
> >  enable_on_exec=0
> >  read_format=15
> >  optional=1
> >
> > -# PERF_TYPE_RAW / topdown-be-bound (0x8300)
> > +# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
> >  [event15:base-stat]
> >  fd=15
> >  group_fd=11
> >  type=4
> > -config=33536
> > +config=33024
> >  disabled=0
> >  enable_on_exec=0
> >  read_format=15
> >  optional=1
> >
> > -# PERF_TYPE_RAW / topdown-heavy-ops (0x8400)
> > +# PERF_TYPE_RAW / INT_MISC.UOP_DROPPING
> >  [event16:base-stat]
> >  fd=16
> > -group_fd=11
> >  type=4
> > -config=33792
> > -disabled=0
> > -enable_on_exec=0
> > -read_format=15
> > +config=4109
> >  optional=1
> >
> > -# PERF_TYPE_RAW / topdown-br-mispredict (0x8500)
> > +# PERF_TYPE_RAW / cpu/INT_MISC.RECOVERY_CYCLES,cmask=1,edge/
> >  [event17:base-stat]
> >  fd=17
> > -group_fd=11
> >  type=4
> > -config=34048
> > -disabled=0
> > -enable_on_exec=0
> > -read_format=15
> > +config=17039629
> >  optional=1
> >
> > -# PERF_TYPE_RAW / topdown-fetch-lat (0x8600)
> > +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.THREAD
> >  [event18:base-stat]
> >  fd=18
> > -group_fd=11
> >  type=4
> > -config=34304
> > -disabled=0
> > -enable_on_exec=0
> > -read_format=15
> > +config=60
> >  optional=1
> >
> > -# PERF_TYPE_RAW / topdown-mem-bound (0x8700)
> > +# PERF_TYPE_RAW / INT_MISC.RECOVERY_CYCLES_ANY
> >  [event19:base-stat]
> >  fd=19
> > -group_fd=11
> >  type=4
> > -config=34560
> > -disabled=0
> > -enable_on_exec=0
> > -read_format=15
> > +config=2097421
> > +optional=1
> > +
> > +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.REF_XCLK
> > +[event20:base-stat]
> > +fd=20
> > +type=4
> > +config=316
> > +optional=1
> > +
> > +# PERF_TYPE_RAW / IDQ_UOPS_NOT_DELIVERED.CORE
> > +[event21:base-stat]
> > +fd=21
> > +type=4
> > +config=412
> > +optional=1
> > +
> > +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.ONE_THREAD_ACTIVE
> > +[event22:base-stat]
> > +fd=22
> > +type=4
> > +config=572
> > +optional=1
> > +
> > +# PERF_TYPE_RAW / UOPS_RETIRED.RETIRE_SLOTS
> > +[event23:base-stat]
> > +fd=23
> > +type=4
> > +config=706
> > +optional=1
> > +
> > +# PERF_TYPE_RAW / UOPS_ISSUED.ANY
> > +[event24:base-stat]
> > +fd=24
> > +type=4
> > +config=270
> >  optional=1
> >
> >  # PERF_TYPE_HW_CACHE /
> >  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
> >  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> > -[event20:base-stat]
> > -fd=20
> > +[event25:base-stat]
> > +fd=25
> >  type=3
> >  config=0
> >  optional=1
> > @@ -181,8 +200,8 @@ optional=1
> >  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
> >  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> > -[event21:base-stat]
> > -fd=21
> > +[event26:base-stat]
> > +fd=26
> >  type=3
> >  config=65536
> >  optional=1
> > @@ -191,8 +210,8 @@ optional=1
> >  #  PERF_COUNT_HW_CACHE_LL                 <<  0  |
> >  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> > -[event22:base-stat]
> > -fd=22
> > +[event27:base-stat]
> > +fd=27
> >  type=3
> >  config=2
> >  optional=1
> > @@ -201,8 +220,8 @@ optional=1
> >  #  PERF_COUNT_HW_CACHE_LL                 <<  0  |
> >  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> > -[event23:base-stat]
> > -fd=23
> > +[event28:base-stat]
> > +fd=28
> >  type=3
> >  config=65538
> >  optional=1
> > @@ -211,8 +230,8 @@ optional=1
> >  #  PERF_COUNT_HW_CACHE_L1I                <<  0  |
> >  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> > -[event24:base-stat]
> > -fd=24
> > +[event29:base-stat]
> > +fd=29
> >  type=3
> >  config=1
> >  optional=1
> > @@ -221,8 +240,8 @@ optional=1
> >  #  PERF_COUNT_HW_CACHE_L1I                <<  0  |
> >  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> > -[event25:base-stat]
> > -fd=25
> > +[event30:base-stat]
> > +fd=30
> >  type=3
> >  config=65537
> >  optional=1
> > @@ -231,8 +250,8 @@ optional=1
> >  #  PERF_COUNT_HW_CACHE_DTLB               <<  0  |
> >  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> > -[event26:base-stat]
> > -fd=26
> > +[event31:base-stat]
> > +fd=31
> >  type=3
> >  config=3
> >  optional=1
> > @@ -241,8 +260,8 @@ optional=1
> >  #  PERF_COUNT_HW_CACHE_DTLB               <<  0  |
> >  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> > -[event27:base-stat]
> > -fd=27
> > +[event32:base-stat]
> > +fd=32
> >  type=3
> >  config=65539
> >  optional=1
> > @@ -251,8 +270,8 @@ optional=1
> >  #  PERF_COUNT_HW_CACHE_ITLB               <<  0  |
> >  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> > -[event28:base-stat]
> > -fd=28
> > +[event33:base-stat]
> > +fd=33
> >  type=3
> >  config=4
> >  optional=1
> > @@ -261,8 +280,8 @@ optional=1
> >  #  PERF_COUNT_HW_CACHE_ITLB               <<  0  |
> >  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> > -[event29:base-stat]
> > -fd=29
> > +[event34:base-stat]
> > +fd=34
> >  type=3
> >  config=65540
> >  optional=1
> > diff --git a/tools/perf/tests/attr/test-stat-detailed-3 b/tools/perf/tests/attr/test-stat-detailed-3
> > index d555042e3fbf..e50535f45977 100644
> > --- a/tools/perf/tests/attr/test-stat-detailed-3
> > +++ b/tools/perf/tests/attr/test-stat-detailed-3
> > @@ -90,89 +90,108 @@ enable_on_exec=0
> >  read_format=15
> >  optional=1
> >
> > -# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
> > +# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
> >  [event13:base-stat]
> >  fd=13
> >  group_fd=11
> >  type=4
> > -config=33024
> > +config=33280
> >  disabled=0
> >  enable_on_exec=0
> >  read_format=15
> >  optional=1
> >
> > -# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
> > +# PERF_TYPE_RAW / topdown-be-bound (0x8300)
> >  [event14:base-stat]
> >  fd=14
> >  group_fd=11
> >  type=4
> > -config=33280
> > +config=33536
> >  disabled=0
> >  enable_on_exec=0
> >  read_format=15
> >  optional=1
> >
> > -# PERF_TYPE_RAW / topdown-be-bound (0x8300)
> > +# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
> >  [event15:base-stat]
> >  fd=15
> >  group_fd=11
> >  type=4
> > -config=33536
> > +config=33024
> >  disabled=0
> >  enable_on_exec=0
> >  read_format=15
> >  optional=1
> >
> > -# PERF_TYPE_RAW / topdown-heavy-ops (0x8400)
> > +# PERF_TYPE_RAW / INT_MISC.UOP_DROPPING
> >  [event16:base-stat]
> >  fd=16
> > -group_fd=11
> >  type=4
> > -config=33792
> > -disabled=0
> > -enable_on_exec=0
> > -read_format=15
> > +config=4109
> >  optional=1
> >
> > -# PERF_TYPE_RAW / topdown-br-mispredict (0x8500)
> > +# PERF_TYPE_RAW / cpu/INT_MISC.RECOVERY_CYCLES,cmask=1,edge/
> >  [event17:base-stat]
> >  fd=17
> > -group_fd=11
> >  type=4
> > -config=34048
> > -disabled=0
> > -enable_on_exec=0
> > -read_format=15
> > +config=17039629
> >  optional=1
> >
> > -# PERF_TYPE_RAW / topdown-fetch-lat (0x8600)
> > +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.THREAD
> >  [event18:base-stat]
> >  fd=18
> > -group_fd=11
> >  type=4
> > -config=34304
> > -disabled=0
> > -enable_on_exec=0
> > -read_format=15
> > +config=60
> >  optional=1
> >
> > -# PERF_TYPE_RAW / topdown-mem-bound (0x8700)
> > +# PERF_TYPE_RAW / INT_MISC.RECOVERY_CYCLES_ANY
> >  [event19:base-stat]
> >  fd=19
> > -group_fd=11
> >  type=4
> > -config=34560
> > -disabled=0
> > -enable_on_exec=0
> > -read_format=15
> > +config=2097421
> > +optional=1
> > +
> > +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.REF_XCLK
> > +[event20:base-stat]
> > +fd=20
> > +type=4
> > +config=316
> > +optional=1
> > +
> > +# PERF_TYPE_RAW / IDQ_UOPS_NOT_DELIVERED.CORE
> > +[event21:base-stat]
> > +fd=21
> > +type=4
> > +config=412
> > +optional=1
> > +
> > +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.ONE_THREAD_ACTIVE
> > +[event22:base-stat]
> > +fd=22
> > +type=4
> > +config=572
> > +optional=1
> > +
> > +# PERF_TYPE_RAW / UOPS_RETIRED.RETIRE_SLOTS
> > +[event23:base-stat]
> > +fd=23
> > +type=4
> > +config=706
> > +optional=1
> > +
> > +# PERF_TYPE_RAW / UOPS_ISSUED.ANY
> > +[event24:base-stat]
> > +fd=24
> > +type=4
> > +config=270
> >  optional=1
> >
> >  # PERF_TYPE_HW_CACHE /
> >  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
> >  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> > -[event20:base-stat]
> > -fd=20
> > +[event25:base-stat]
> > +fd=25
> >  type=3
> >  config=0
> >  optional=1
> > @@ -181,8 +200,8 @@ optional=1
> >  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
> >  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> > -[event21:base-stat]
> > -fd=21
> > +[event26:base-stat]
> > +fd=26
> >  type=3
> >  config=65536
> >  optional=1
> > @@ -191,8 +210,8 @@ optional=1
> >  #  PERF_COUNT_HW_CACHE_LL                 <<  0  |
> >  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> > -[event22:base-stat]
> > -fd=22
> > +[event27:base-stat]
> > +fd=27
> >  type=3
> >  config=2
> >  optional=1
> > @@ -201,8 +220,8 @@ optional=1
> >  #  PERF_COUNT_HW_CACHE_LL                 <<  0  |
> >  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> > -[event23:base-stat]
> > -fd=23
> > +[event28:base-stat]
> > +fd=28
> >  type=3
> >  config=65538
> >  optional=1
> > @@ -211,8 +230,8 @@ optional=1
> >  #  PERF_COUNT_HW_CACHE_L1I                <<  0  |
> >  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> > -[event24:base-stat]
> > -fd=24
> > +[event29:base-stat]
> > +fd=29
> >  type=3
> >  config=1
> >  optional=1
> > @@ -221,8 +240,8 @@ optional=1
> >  #  PERF_COUNT_HW_CACHE_L1I                <<  0  |
> >  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> > -[event25:base-stat]
> > -fd=25
> > +[event30:base-stat]
> > +fd=30
> >  type=3
> >  config=65537
> >  optional=1
> > @@ -231,8 +250,8 @@ optional=1
> >  #  PERF_COUNT_HW_CACHE_DTLB               <<  0  |
> >  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> > -[event26:base-stat]
> > -fd=26
> > +[event31:base-stat]
> > +fd=31
> >  type=3
> >  config=3
> >  optional=1
> > @@ -241,8 +260,8 @@ optional=1
> >  #  PERF_COUNT_HW_CACHE_DTLB               <<  0  |
> >  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> > -[event27:base-stat]
> > -fd=27
> > +[event32:base-stat]
> > +fd=32
> >  type=3
> >  config=65539
> >  optional=1
> > @@ -251,8 +270,8 @@ optional=1
> >  #  PERF_COUNT_HW_CACHE_ITLB               <<  0  |
> >  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> > -[event28:base-stat]
> > -fd=28
> > +[event33:base-stat]
> > +fd=33
> >  type=3
> >  config=4
> >  optional=1
> > @@ -261,8 +280,8 @@ optional=1
> >  #  PERF_COUNT_HW_CACHE_ITLB               <<  0  |
> >  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> > -[event29:base-stat]
> > -fd=29
> > +[event34:base-stat]
> > +fd=34
> >  type=3
> >  config=65540
> >  optional=1
> > @@ -271,8 +290,8 @@ optional=1
> >  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
> >  # (PERF_COUNT_HW_CACHE_OP_PREFETCH        <<  8) |
> >  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> > -[event30:base-stat]
> > -fd=30
> > +[event35:base-stat]
> > +fd=35
> >  type=3
> >  config=512
> >  optional=1
> > @@ -281,8 +300,8 @@ optional=1
> >  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
> >  # (PERF_COUNT_HW_CACHE_OP_PREFETCH        <<  8) |
> >  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> > -[event31:base-stat]
> > -fd=31
> > +[event36:base-stat]
> > +fd=36
> >  type=3
> >  config=66048
> >  optional=1

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH v1 1/2] perf test attr: Update no event/metric expectations
  2023-05-18 14:10   ` Ian Rogers
@ 2023-05-18 14:40     ` Liang, Kan
  2023-05-18 16:36       ` Ian Rogers
  0 siblings, 1 reply; 14+ messages in thread
From: Liang, Kan @ 2023-05-18 14:40 UTC (permalink / raw)
  To: Ian Rogers
  Cc: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo,
	Mark Rutland, Alexander Shishkin, Jiri Olsa, Namhyung Kim,
	Adrian Hunter, James Clark, Thomas Richter, linux-perf-users,
	linux-kernel



On 2023-05-18 10:10 a.m., Ian Rogers wrote:
> On Thu, May 18, 2023 at 6:01 AM Liang, Kan <kan.liang@linux.intel.com> wrote:
>>
>>
>>
>> On 2023-05-17 6:57 p.m., Ian Rogers wrote:
>>> Previously hard coded events/metrics were used, update for the use of
>>> the TopdownL1 json metric group.
>>>
>>> Fixes: 94b1a603fca7 ("perf stat: Add TopdownL1 metric as a default if present")
>>> Signed-off-by: Ian Rogers <irogers@google.com>
>>> ---
>>>  tools/perf/tests/attr/base-stat            |   2 +-
>>>  tools/perf/tests/attr/test-stat-default    |  80 ++++++++-----
>>>  tools/perf/tests/attr/test-stat-detailed-1 |  95 +++++++++------
>>>  tools/perf/tests/attr/test-stat-detailed-2 | 119 +++++++++++--------
>>>  tools/perf/tests/attr/test-stat-detailed-3 | 127 ++++++++++++---------
>>>  5 files changed, 249 insertions(+), 174 deletions(-)
>>>
>>> diff --git a/tools/perf/tests/attr/base-stat b/tools/perf/tests/attr/base-stat
>>> index a21fb65bc012..fccd8ec4d1b0 100644
>>> --- a/tools/perf/tests/attr/base-stat
>>> +++ b/tools/perf/tests/attr/base-stat
>>> @@ -16,7 +16,7 @@ pinned=0
>>>  exclusive=0
>>>  exclude_user=0
>>>  exclude_kernel=0|1
>>> -exclude_hv=0
>>> +exclude_hv=0|1
>>>  exclude_idle=0
>>>  mmap=0
>>>  comm=0
>>> diff --git a/tools/perf/tests/attr/test-stat-default b/tools/perf/tests/attr/test-stat-default
>>> index d8ea6a88163f..a1e2da0a9a6d 100644
>>> --- a/tools/perf/tests/attr/test-stat-default
>>> +++ b/tools/perf/tests/attr/test-stat-default
>>> @@ -40,7 +40,6 @@ fd=6
>>>  type=0
>>>  config=7
>>>  optional=1
>>> -
>>>  # PERF_TYPE_HARDWARE / PERF_COUNT_HW_STALLED_CYCLES_BACKEND
>>>  [event7:base-stat]
>>>  fd=7
>>> @@ -89,79 +88,98 @@ enable_on_exec=0
>>>  read_format=15
>>>  optional=1
>>>
>>> -# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
>>> +# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
>>>  [event13:base-stat]
>>>  fd=13
>>>  group_fd=11
>>>  type=4
>>> -config=33024
>>> +config=33280
>>>  disabled=0
>>>  enable_on_exec=0
>>>  read_format=15
>>>  optional=1
>>>
>>> -# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
>>> +# PERF_TYPE_RAW / topdown-be-bound (0x8300)
>>>  [event14:base-stat]
>>>  fd=14
>>>  group_fd=11
>>>  type=4
>>> -config=33280
>>> +config=33536
>>>  disabled=0
>>>  enable_on_exec=0
>>>  read_format=15
>>>  optional=1
>>>
>>> -# PERF_TYPE_RAW / topdown-be-bound (0x8300)
>>> +# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
>>>  [event15:base-stat]
>>>  fd=15
>>>  group_fd=11
>>>  type=4
>>> -config=33536
>>> +config=33024
>>>  disabled=0
>>>  enable_on_exec=0
>>>  read_format=15
>>>  optional=1
>>>
>>> -# PERF_TYPE_RAW / topdown-heavy-ops (0x8400)
>>> +# PERF_TYPE_RAW / INT_MISC.UOP_DROPPING
>>>  [event16:base-stat]
>>>  fd=16
>>> -group_fd=11
>>>  type=4
>>> -config=33792
>>> -disabled=0
>>> -enable_on_exec=0
>>> -read_format=15
>>> +config=4109
>>>  optional=1
>>>
>>> -# PERF_TYPE_RAW / topdown-br-mispredict (0x8500)
>>> +# PERF_TYPE_RAW / cpu/INT_MISC.RECOVERY_CYCLES,cmask=1,edge/
>>>  [event17:base-stat]
>>>  fd=17
>>> -group_fd=11
>>>  type=4
>>> -config=34048
>>> -disabled=0
>>> -enable_on_exec=0
>>> -read_format=15
>>> +config=17039629
>>>  optional=1
>>>
>>> -# PERF_TYPE_RAW / topdown-fetch-lat (0x8600)
>>> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.THREAD
>>>  [event18:base-stat]
>>>  fd=18
>>> -group_fd=11
>>>  type=4
>>> -config=34304
>>> -disabled=0
>>> -enable_on_exec=0
>>> -read_format=15
>>> +config=60
>>>  optional=1
>>>
>>> -# PERF_TYPE_RAW / topdown-mem-bound (0x8700)
>>> +# PERF_TYPE_RAW / INT_MISC.RECOVERY_CYCLES_ANY
>>>  [event19:base-stat]
>>>  fd=19
>>> -group_fd=11
>>>  type=4
>>> -config=34560
>>> -disabled=0
>>> -enable_on_exec=0
>>> -read_format=15
>>> +config=2097421
>>> +optional=1
>>> +
>>> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.REF_XCLK
>>> +[event20:base-stat]
>>> +fd=20
>>> +type=4
>>> +config=316
>>> +optional=1
>>> +
>>> +# PERF_TYPE_RAW / IDQ_UOPS_NOT_DELIVERED.CORE
>>> +[event21:base-stat]
>>> +fd=21
>>> +type=4
>>> +config=412
>>> +optional=1
>>> +
>>> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.ONE_THREAD_ACTIVE
>>> +[event22:base-stat]
>>> +fd=22
>>> +type=4
>>> +config=572
>>> +optional=1
>>> +
>>> +# PERF_TYPE_RAW / UOPS_RETIRED.RETIRE_SLOTS
>>
>>
>> Most of the newly added events are non-architectural events. The event
>> name and the encoding could be changed later. I don't think it's a good
>> idea to hard code them in the test. Could we read the TopdownL1 metrics,
>> get a event list at runtime, and then only test those events?
> 
> Not really, this test fix is targeting 6.4 which shouldn't be a moving
> target. We can do something better in 6.5.
What's the problem the patch trying to fix? Is it user visiable? Does
the perf test fail?

I want to understand why we need such temporary fix.

> 
> Fwiw, on hybrid you get events on 2 PMUs, possibly with the PMU type
> encoded in the high part of the config. Let's see how hybrid dealt
> with this test:
> https://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git/tree/tools/perf/tests/attr.c?h=perf-tools#n188
> Oh.
>

If we don't know how to handle the hybrid, we can skip the test cases.
We can add a specific case later in platform specifc test cases. I don't
see any problem here.

The temporary fix may not work for all the generations, especially for
the future generations. It's very likely that we still run 6.4 on a
future platform with a different formula. Then it may bring problems, no?

Thanks,
Kan

> Thanks,
> Ian
> 
>> Thanks,
>> Kan
>>
>>> +[event23:base-stat]
>>> +fd=23
>>> +type=4
>>> +config=706
>>> +optional=1
>>> +
>>> +# PERF_TYPE_RAW / UOPS_ISSUED.ANY
>>> +[event24:base-stat]
>>> +fd=24
>>> +type=4
>>> +config=270
>>>  optional=1
>>> diff --git a/tools/perf/tests/attr/test-stat-detailed-1 b/tools/perf/tests/attr/test-stat-detailed-1
>>> index b656ab93c5bf..1c52cb05c900 100644
>>> --- a/tools/perf/tests/attr/test-stat-detailed-1
>>> +++ b/tools/perf/tests/attr/test-stat-detailed-1
>>> @@ -90,89 +90,108 @@ enable_on_exec=0
>>>  read_format=15
>>>  optional=1
>>>
>>> -# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
>>> +# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
>>>  [event13:base-stat]
>>>  fd=13
>>>  group_fd=11
>>>  type=4
>>> -config=33024
>>> +config=33280
>>>  disabled=0
>>>  enable_on_exec=0
>>>  read_format=15
>>>  optional=1
>>>
>>> -# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
>>> +# PERF_TYPE_RAW / topdown-be-bound (0x8300)
>>>  [event14:base-stat]
>>>  fd=14
>>>  group_fd=11
>>>  type=4
>>> -config=33280
>>> +config=33536
>>>  disabled=0
>>>  enable_on_exec=0
>>>  read_format=15
>>>  optional=1
>>>
>>> -# PERF_TYPE_RAW / topdown-be-bound (0x8300)
>>> +# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
>>>  [event15:base-stat]
>>>  fd=15
>>>  group_fd=11
>>>  type=4
>>> -config=33536
>>> +config=33024
>>>  disabled=0
>>>  enable_on_exec=0
>>>  read_format=15
>>>  optional=1
>>>
>>> -# PERF_TYPE_RAW / topdown-heavy-ops (0x8400)
>>> +# PERF_TYPE_RAW / INT_MISC.UOP_DROPPING
>>>  [event16:base-stat]
>>>  fd=16
>>> -group_fd=11
>>>  type=4
>>> -config=33792
>>> -disabled=0
>>> -enable_on_exec=0
>>> -read_format=15
>>> +config=4109
>>>  optional=1
>>>
>>> -# PERF_TYPE_RAW / topdown-br-mispredict (0x8500)
>>> +# PERF_TYPE_RAW / cpu/INT_MISC.RECOVERY_CYCLES,cmask=1,edge/
>>>  [event17:base-stat]
>>>  fd=17
>>> -group_fd=11
>>>  type=4
>>> -config=34048
>>> -disabled=0
>>> -enable_on_exec=0
>>> -read_format=15
>>> +config=17039629
>>>  optional=1
>>>
>>> -# PERF_TYPE_RAW / topdown-fetch-lat (0x8600)
>>> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.THREAD
>>>  [event18:base-stat]
>>>  fd=18
>>> -group_fd=11
>>>  type=4
>>> -config=34304
>>> -disabled=0
>>> -enable_on_exec=0
>>> -read_format=15
>>> +config=60
>>>  optional=1
>>>
>>> -# PERF_TYPE_RAW / topdown-mem-bound (0x8700)
>>> +# PERF_TYPE_RAW / INT_MISC.RECOVERY_CYCLES_ANY
>>>  [event19:base-stat]
>>>  fd=19
>>> -group_fd=11
>>>  type=4
>>> -config=34560
>>> -disabled=0
>>> -enable_on_exec=0
>>> -read_format=15
>>> +config=2097421
>>> +optional=1
>>> +
>>> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.REF_XCLK
>>> +[event20:base-stat]
>>> +fd=20
>>> +type=4
>>> +config=316
>>> +optional=1
>>> +
>>> +# PERF_TYPE_RAW / IDQ_UOPS_NOT_DELIVERED.CORE
>>> +[event21:base-stat]
>>> +fd=21
>>> +type=4
>>> +config=412
>>> +optional=1
>>> +
>>> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.ONE_THREAD_ACTIVE
>>> +[event22:base-stat]
>>> +fd=22
>>> +type=4
>>> +config=572
>>> +optional=1
>>> +
>>> +# PERF_TYPE_RAW / UOPS_RETIRED.RETIRE_SLOTS
>>> +[event23:base-stat]
>>> +fd=23
>>> +type=4
>>> +config=706
>>> +optional=1
>>> +
>>> +# PERF_TYPE_RAW / UOPS_ISSUED.ANY
>>> +[event24:base-stat]
>>> +fd=24
>>> +type=4
>>> +config=270
>>>  optional=1
>>>
>>>  # PERF_TYPE_HW_CACHE /
>>>  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
>>> -[event20:base-stat]
>>> -fd=20
>>> +[event25:base-stat]
>>> +fd=25
>>>  type=3
>>>  config=0
>>>  optional=1
>>> @@ -181,8 +200,8 @@ optional=1
>>>  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
>>> -[event21:base-stat]
>>> -fd=21
>>> +[event26:base-stat]
>>> +fd=26
>>>  type=3
>>>  config=65536
>>>  optional=1
>>> @@ -191,8 +210,8 @@ optional=1
>>>  #  PERF_COUNT_HW_CACHE_LL                 <<  0  |
>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
>>> -[event22:base-stat]
>>> -fd=22
>>> +[event27:base-stat]
>>> +fd=27
>>>  type=3
>>>  config=2
>>>  optional=1
>>> @@ -201,8 +220,8 @@ optional=1
>>>  #  PERF_COUNT_HW_CACHE_LL                 <<  0  |
>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
>>> -[event23:base-stat]
>>> -fd=23
>>> +[event28:base-stat]
>>> +fd=28
>>>  type=3
>>>  config=65538
>>>  optional=1
>>> diff --git a/tools/perf/tests/attr/test-stat-detailed-2 b/tools/perf/tests/attr/test-stat-detailed-2
>>> index 97625090a1c4..7e961d24a885 100644
>>> --- a/tools/perf/tests/attr/test-stat-detailed-2
>>> +++ b/tools/perf/tests/attr/test-stat-detailed-2
>>> @@ -90,89 +90,108 @@ enable_on_exec=0
>>>  read_format=15
>>>  optional=1
>>>
>>> -# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
>>> +# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
>>>  [event13:base-stat]
>>>  fd=13
>>>  group_fd=11
>>>  type=4
>>> -config=33024
>>> +config=33280
>>>  disabled=0
>>>  enable_on_exec=0
>>>  read_format=15
>>>  optional=1
>>>
>>> -# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
>>> +# PERF_TYPE_RAW / topdown-be-bound (0x8300)
>>>  [event14:base-stat]
>>>  fd=14
>>>  group_fd=11
>>>  type=4
>>> -config=33280
>>> +config=33536
>>>  disabled=0
>>>  enable_on_exec=0
>>>  read_format=15
>>>  optional=1
>>>
>>> -# PERF_TYPE_RAW / topdown-be-bound (0x8300)
>>> +# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
>>>  [event15:base-stat]
>>>  fd=15
>>>  group_fd=11
>>>  type=4
>>> -config=33536
>>> +config=33024
>>>  disabled=0
>>>  enable_on_exec=0
>>>  read_format=15
>>>  optional=1
>>>
>>> -# PERF_TYPE_RAW / topdown-heavy-ops (0x8400)
>>> +# PERF_TYPE_RAW / INT_MISC.UOP_DROPPING
>>>  [event16:base-stat]
>>>  fd=16
>>> -group_fd=11
>>>  type=4
>>> -config=33792
>>> -disabled=0
>>> -enable_on_exec=0
>>> -read_format=15
>>> +config=4109
>>>  optional=1
>>>
>>> -# PERF_TYPE_RAW / topdown-br-mispredict (0x8500)
>>> +# PERF_TYPE_RAW / cpu/INT_MISC.RECOVERY_CYCLES,cmask=1,edge/
>>>  [event17:base-stat]
>>>  fd=17
>>> -group_fd=11
>>>  type=4
>>> -config=34048
>>> -disabled=0
>>> -enable_on_exec=0
>>> -read_format=15
>>> +config=17039629
>>>  optional=1
>>>
>>> -# PERF_TYPE_RAW / topdown-fetch-lat (0x8600)
>>> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.THREAD
>>>  [event18:base-stat]
>>>  fd=18
>>> -group_fd=11
>>>  type=4
>>> -config=34304
>>> -disabled=0
>>> -enable_on_exec=0
>>> -read_format=15
>>> +config=60
>>>  optional=1
>>>
>>> -# PERF_TYPE_RAW / topdown-mem-bound (0x8700)
>>> +# PERF_TYPE_RAW / INT_MISC.RECOVERY_CYCLES_ANY
>>>  [event19:base-stat]
>>>  fd=19
>>> -group_fd=11
>>>  type=4
>>> -config=34560
>>> -disabled=0
>>> -enable_on_exec=0
>>> -read_format=15
>>> +config=2097421
>>> +optional=1
>>> +
>>> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.REF_XCLK
>>> +[event20:base-stat]
>>> +fd=20
>>> +type=4
>>> +config=316
>>> +optional=1
>>> +
>>> +# PERF_TYPE_RAW / IDQ_UOPS_NOT_DELIVERED.CORE
>>> +[event21:base-stat]
>>> +fd=21
>>> +type=4
>>> +config=412
>>> +optional=1
>>> +
>>> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.ONE_THREAD_ACTIVE
>>> +[event22:base-stat]
>>> +fd=22
>>> +type=4
>>> +config=572
>>> +optional=1
>>> +
>>> +# PERF_TYPE_RAW / UOPS_RETIRED.RETIRE_SLOTS
>>> +[event23:base-stat]
>>> +fd=23
>>> +type=4
>>> +config=706
>>> +optional=1
>>> +
>>> +# PERF_TYPE_RAW / UOPS_ISSUED.ANY
>>> +[event24:base-stat]
>>> +fd=24
>>> +type=4
>>> +config=270
>>>  optional=1
>>>
>>>  # PERF_TYPE_HW_CACHE /
>>>  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
>>> -[event20:base-stat]
>>> -fd=20
>>> +[event25:base-stat]
>>> +fd=25
>>>  type=3
>>>  config=0
>>>  optional=1
>>> @@ -181,8 +200,8 @@ optional=1
>>>  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
>>> -[event21:base-stat]
>>> -fd=21
>>> +[event26:base-stat]
>>> +fd=26
>>>  type=3
>>>  config=65536
>>>  optional=1
>>> @@ -191,8 +210,8 @@ optional=1
>>>  #  PERF_COUNT_HW_CACHE_LL                 <<  0  |
>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
>>> -[event22:base-stat]
>>> -fd=22
>>> +[event27:base-stat]
>>> +fd=27
>>>  type=3
>>>  config=2
>>>  optional=1
>>> @@ -201,8 +220,8 @@ optional=1
>>>  #  PERF_COUNT_HW_CACHE_LL                 <<  0  |
>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
>>> -[event23:base-stat]
>>> -fd=23
>>> +[event28:base-stat]
>>> +fd=28
>>>  type=3
>>>  config=65538
>>>  optional=1
>>> @@ -211,8 +230,8 @@ optional=1
>>>  #  PERF_COUNT_HW_CACHE_L1I                <<  0  |
>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
>>> -[event24:base-stat]
>>> -fd=24
>>> +[event29:base-stat]
>>> +fd=29
>>>  type=3
>>>  config=1
>>>  optional=1
>>> @@ -221,8 +240,8 @@ optional=1
>>>  #  PERF_COUNT_HW_CACHE_L1I                <<  0  |
>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
>>> -[event25:base-stat]
>>> -fd=25
>>> +[event30:base-stat]
>>> +fd=30
>>>  type=3
>>>  config=65537
>>>  optional=1
>>> @@ -231,8 +250,8 @@ optional=1
>>>  #  PERF_COUNT_HW_CACHE_DTLB               <<  0  |
>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
>>> -[event26:base-stat]
>>> -fd=26
>>> +[event31:base-stat]
>>> +fd=31
>>>  type=3
>>>  config=3
>>>  optional=1
>>> @@ -241,8 +260,8 @@ optional=1
>>>  #  PERF_COUNT_HW_CACHE_DTLB               <<  0  |
>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
>>> -[event27:base-stat]
>>> -fd=27
>>> +[event32:base-stat]
>>> +fd=32
>>>  type=3
>>>  config=65539
>>>  optional=1
>>> @@ -251,8 +270,8 @@ optional=1
>>>  #  PERF_COUNT_HW_CACHE_ITLB               <<  0  |
>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
>>> -[event28:base-stat]
>>> -fd=28
>>> +[event33:base-stat]
>>> +fd=33
>>>  type=3
>>>  config=4
>>>  optional=1
>>> @@ -261,8 +280,8 @@ optional=1
>>>  #  PERF_COUNT_HW_CACHE_ITLB               <<  0  |
>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
>>> -[event29:base-stat]
>>> -fd=29
>>> +[event34:base-stat]
>>> +fd=34
>>>  type=3
>>>  config=65540
>>>  optional=1
>>> diff --git a/tools/perf/tests/attr/test-stat-detailed-3 b/tools/perf/tests/attr/test-stat-detailed-3
>>> index d555042e3fbf..e50535f45977 100644
>>> --- a/tools/perf/tests/attr/test-stat-detailed-3
>>> +++ b/tools/perf/tests/attr/test-stat-detailed-3
>>> @@ -90,89 +90,108 @@ enable_on_exec=0
>>>  read_format=15
>>>  optional=1
>>>
>>> -# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
>>> +# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
>>>  [event13:base-stat]
>>>  fd=13
>>>  group_fd=11
>>>  type=4
>>> -config=33024
>>> +config=33280
>>>  disabled=0
>>>  enable_on_exec=0
>>>  read_format=15
>>>  optional=1
>>>
>>> -# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
>>> +# PERF_TYPE_RAW / topdown-be-bound (0x8300)
>>>  [event14:base-stat]
>>>  fd=14
>>>  group_fd=11
>>>  type=4
>>> -config=33280
>>> +config=33536
>>>  disabled=0
>>>  enable_on_exec=0
>>>  read_format=15
>>>  optional=1
>>>
>>> -# PERF_TYPE_RAW / topdown-be-bound (0x8300)
>>> +# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
>>>  [event15:base-stat]
>>>  fd=15
>>>  group_fd=11
>>>  type=4
>>> -config=33536
>>> +config=33024
>>>  disabled=0
>>>  enable_on_exec=0
>>>  read_format=15
>>>  optional=1
>>>
>>> -# PERF_TYPE_RAW / topdown-heavy-ops (0x8400)
>>> +# PERF_TYPE_RAW / INT_MISC.UOP_DROPPING
>>>  [event16:base-stat]
>>>  fd=16
>>> -group_fd=11
>>>  type=4
>>> -config=33792
>>> -disabled=0
>>> -enable_on_exec=0
>>> -read_format=15
>>> +config=4109
>>>  optional=1
>>>
>>> -# PERF_TYPE_RAW / topdown-br-mispredict (0x8500)
>>> +# PERF_TYPE_RAW / cpu/INT_MISC.RECOVERY_CYCLES,cmask=1,edge/
>>>  [event17:base-stat]
>>>  fd=17
>>> -group_fd=11
>>>  type=4
>>> -config=34048
>>> -disabled=0
>>> -enable_on_exec=0
>>> -read_format=15
>>> +config=17039629
>>>  optional=1
>>>
>>> -# PERF_TYPE_RAW / topdown-fetch-lat (0x8600)
>>> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.THREAD
>>>  [event18:base-stat]
>>>  fd=18
>>> -group_fd=11
>>>  type=4
>>> -config=34304
>>> -disabled=0
>>> -enable_on_exec=0
>>> -read_format=15
>>> +config=60
>>>  optional=1
>>>
>>> -# PERF_TYPE_RAW / topdown-mem-bound (0x8700)
>>> +# PERF_TYPE_RAW / INT_MISC.RECOVERY_CYCLES_ANY
>>>  [event19:base-stat]
>>>  fd=19
>>> -group_fd=11
>>>  type=4
>>> -config=34560
>>> -disabled=0
>>> -enable_on_exec=0
>>> -read_format=15
>>> +config=2097421
>>> +optional=1
>>> +
>>> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.REF_XCLK
>>> +[event20:base-stat]
>>> +fd=20
>>> +type=4
>>> +config=316
>>> +optional=1
>>> +
>>> +# PERF_TYPE_RAW / IDQ_UOPS_NOT_DELIVERED.CORE
>>> +[event21:base-stat]
>>> +fd=21
>>> +type=4
>>> +config=412
>>> +optional=1
>>> +
>>> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.ONE_THREAD_ACTIVE
>>> +[event22:base-stat]
>>> +fd=22
>>> +type=4
>>> +config=572
>>> +optional=1
>>> +
>>> +# PERF_TYPE_RAW / UOPS_RETIRED.RETIRE_SLOTS
>>> +[event23:base-stat]
>>> +fd=23
>>> +type=4
>>> +config=706
>>> +optional=1
>>> +
>>> +# PERF_TYPE_RAW / UOPS_ISSUED.ANY
>>> +[event24:base-stat]
>>> +fd=24
>>> +type=4
>>> +config=270
>>>  optional=1
>>>
>>>  # PERF_TYPE_HW_CACHE /
>>>  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
>>> -[event20:base-stat]
>>> -fd=20
>>> +[event25:base-stat]
>>> +fd=25
>>>  type=3
>>>  config=0
>>>  optional=1
>>> @@ -181,8 +200,8 @@ optional=1
>>>  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
>>> -[event21:base-stat]
>>> -fd=21
>>> +[event26:base-stat]
>>> +fd=26
>>>  type=3
>>>  config=65536
>>>  optional=1
>>> @@ -191,8 +210,8 @@ optional=1
>>>  #  PERF_COUNT_HW_CACHE_LL                 <<  0  |
>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
>>> -[event22:base-stat]
>>> -fd=22
>>> +[event27:base-stat]
>>> +fd=27
>>>  type=3
>>>  config=2
>>>  optional=1
>>> @@ -201,8 +220,8 @@ optional=1
>>>  #  PERF_COUNT_HW_CACHE_LL                 <<  0  |
>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
>>> -[event23:base-stat]
>>> -fd=23
>>> +[event28:base-stat]
>>> +fd=28
>>>  type=3
>>>  config=65538
>>>  optional=1
>>> @@ -211,8 +230,8 @@ optional=1
>>>  #  PERF_COUNT_HW_CACHE_L1I                <<  0  |
>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
>>> -[event24:base-stat]
>>> -fd=24
>>> +[event29:base-stat]
>>> +fd=29
>>>  type=3
>>>  config=1
>>>  optional=1
>>> @@ -221,8 +240,8 @@ optional=1
>>>  #  PERF_COUNT_HW_CACHE_L1I                <<  0  |
>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
>>> -[event25:base-stat]
>>> -fd=25
>>> +[event30:base-stat]
>>> +fd=30
>>>  type=3
>>>  config=65537
>>>  optional=1
>>> @@ -231,8 +250,8 @@ optional=1
>>>  #  PERF_COUNT_HW_CACHE_DTLB               <<  0  |
>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
>>> -[event26:base-stat]
>>> -fd=26
>>> +[event31:base-stat]
>>> +fd=31
>>>  type=3
>>>  config=3
>>>  optional=1
>>> @@ -241,8 +260,8 @@ optional=1
>>>  #  PERF_COUNT_HW_CACHE_DTLB               <<  0  |
>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
>>> -[event27:base-stat]
>>> -fd=27
>>> +[event32:base-stat]
>>> +fd=32
>>>  type=3
>>>  config=65539
>>>  optional=1
>>> @@ -251,8 +270,8 @@ optional=1
>>>  #  PERF_COUNT_HW_CACHE_ITLB               <<  0  |
>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
>>> -[event28:base-stat]
>>> -fd=28
>>> +[event33:base-stat]
>>> +fd=33
>>>  type=3
>>>  config=4
>>>  optional=1
>>> @@ -261,8 +280,8 @@ optional=1
>>>  #  PERF_COUNT_HW_CACHE_ITLB               <<  0  |
>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
>>> -[event29:base-stat]
>>> -fd=29
>>> +[event34:base-stat]
>>> +fd=34
>>>  type=3
>>>  config=65540
>>>  optional=1
>>> @@ -271,8 +290,8 @@ optional=1
>>>  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
>>>  # (PERF_COUNT_HW_CACHE_OP_PREFETCH        <<  8) |
>>>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
>>> -[event30:base-stat]
>>> -fd=30
>>> +[event35:base-stat]
>>> +fd=35
>>>  type=3
>>>  config=512
>>>  optional=1
>>> @@ -281,8 +300,8 @@ optional=1
>>>  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
>>>  # (PERF_COUNT_HW_CACHE_OP_PREFETCH        <<  8) |
>>>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
>>> -[event31:base-stat]
>>> -fd=31
>>> +[event36:base-stat]
>>> +fd=36
>>>  type=3
>>>  config=66048
>>>  optional=1

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH v1 1/2] perf test attr: Update no event/metric expectations
  2023-05-18 14:40     ` Liang, Kan
@ 2023-05-18 16:36       ` Ian Rogers
  2023-05-18 17:36         ` Liang, Kan
  0 siblings, 1 reply; 14+ messages in thread
From: Ian Rogers @ 2023-05-18 16:36 UTC (permalink / raw)
  To: Liang, Kan
  Cc: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo,
	Mark Rutland, Alexander Shishkin, Jiri Olsa, Namhyung Kim,
	Adrian Hunter, James Clark, Thomas Richter, linux-perf-users,
	linux-kernel

On Thu, May 18, 2023 at 7:40 AM Liang, Kan <kan.liang@linux.intel.com> wrote:
>
>
>
> On 2023-05-18 10:10 a.m., Ian Rogers wrote:
> > On Thu, May 18, 2023 at 6:01 AM Liang, Kan <kan.liang@linux.intel.com> wrote:
> >>
> >>
> >>
> >> On 2023-05-17 6:57 p.m., Ian Rogers wrote:
> >>> Previously hard coded events/metrics were used, update for the use of
> >>> the TopdownL1 json metric group.
> >>>
> >>> Fixes: 94b1a603fca7 ("perf stat: Add TopdownL1 metric as a default if present")
> >>> Signed-off-by: Ian Rogers <irogers@google.com>
> >>> ---
> >>>  tools/perf/tests/attr/base-stat            |   2 +-
> >>>  tools/perf/tests/attr/test-stat-default    |  80 ++++++++-----
> >>>  tools/perf/tests/attr/test-stat-detailed-1 |  95 +++++++++------
> >>>  tools/perf/tests/attr/test-stat-detailed-2 | 119 +++++++++++--------
> >>>  tools/perf/tests/attr/test-stat-detailed-3 | 127 ++++++++++++---------
> >>>  5 files changed, 249 insertions(+), 174 deletions(-)
> >>>
> >>> diff --git a/tools/perf/tests/attr/base-stat b/tools/perf/tests/attr/base-stat
> >>> index a21fb65bc012..fccd8ec4d1b0 100644
> >>> --- a/tools/perf/tests/attr/base-stat
> >>> +++ b/tools/perf/tests/attr/base-stat
> >>> @@ -16,7 +16,7 @@ pinned=0
> >>>  exclusive=0
> >>>  exclude_user=0
> >>>  exclude_kernel=0|1
> >>> -exclude_hv=0
> >>> +exclude_hv=0|1
> >>>  exclude_idle=0
> >>>  mmap=0
> >>>  comm=0
> >>> diff --git a/tools/perf/tests/attr/test-stat-default b/tools/perf/tests/attr/test-stat-default
> >>> index d8ea6a88163f..a1e2da0a9a6d 100644
> >>> --- a/tools/perf/tests/attr/test-stat-default
> >>> +++ b/tools/perf/tests/attr/test-stat-default
> >>> @@ -40,7 +40,6 @@ fd=6
> >>>  type=0
> >>>  config=7
> >>>  optional=1
> >>> -
> >>>  # PERF_TYPE_HARDWARE / PERF_COUNT_HW_STALLED_CYCLES_BACKEND
> >>>  [event7:base-stat]
> >>>  fd=7
> >>> @@ -89,79 +88,98 @@ enable_on_exec=0
> >>>  read_format=15
> >>>  optional=1
> >>>
> >>> -# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
> >>> +# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
> >>>  [event13:base-stat]
> >>>  fd=13
> >>>  group_fd=11
> >>>  type=4
> >>> -config=33024
> >>> +config=33280
> >>>  disabled=0
> >>>  enable_on_exec=0
> >>>  read_format=15
> >>>  optional=1
> >>>
> >>> -# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
> >>> +# PERF_TYPE_RAW / topdown-be-bound (0x8300)
> >>>  [event14:base-stat]
> >>>  fd=14
> >>>  group_fd=11
> >>>  type=4
> >>> -config=33280
> >>> +config=33536
> >>>  disabled=0
> >>>  enable_on_exec=0
> >>>  read_format=15
> >>>  optional=1
> >>>
> >>> -# PERF_TYPE_RAW / topdown-be-bound (0x8300)
> >>> +# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
> >>>  [event15:base-stat]
> >>>  fd=15
> >>>  group_fd=11
> >>>  type=4
> >>> -config=33536
> >>> +config=33024
> >>>  disabled=0
> >>>  enable_on_exec=0
> >>>  read_format=15
> >>>  optional=1
> >>>
> >>> -# PERF_TYPE_RAW / topdown-heavy-ops (0x8400)
> >>> +# PERF_TYPE_RAW / INT_MISC.UOP_DROPPING
> >>>  [event16:base-stat]
> >>>  fd=16
> >>> -group_fd=11
> >>>  type=4
> >>> -config=33792
> >>> -disabled=0
> >>> -enable_on_exec=0
> >>> -read_format=15
> >>> +config=4109
> >>>  optional=1
> >>>
> >>> -# PERF_TYPE_RAW / topdown-br-mispredict (0x8500)
> >>> +# PERF_TYPE_RAW / cpu/INT_MISC.RECOVERY_CYCLES,cmask=1,edge/
> >>>  [event17:base-stat]
> >>>  fd=17
> >>> -group_fd=11
> >>>  type=4
> >>> -config=34048
> >>> -disabled=0
> >>> -enable_on_exec=0
> >>> -read_format=15
> >>> +config=17039629
> >>>  optional=1
> >>>
> >>> -# PERF_TYPE_RAW / topdown-fetch-lat (0x8600)
> >>> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.THREAD
> >>>  [event18:base-stat]
> >>>  fd=18
> >>> -group_fd=11
> >>>  type=4
> >>> -config=34304
> >>> -disabled=0
> >>> -enable_on_exec=0
> >>> -read_format=15
> >>> +config=60
> >>>  optional=1
> >>>
> >>> -# PERF_TYPE_RAW / topdown-mem-bound (0x8700)
> >>> +# PERF_TYPE_RAW / INT_MISC.RECOVERY_CYCLES_ANY
> >>>  [event19:base-stat]
> >>>  fd=19
> >>> -group_fd=11
> >>>  type=4
> >>> -config=34560
> >>> -disabled=0
> >>> -enable_on_exec=0
> >>> -read_format=15
> >>> +config=2097421
> >>> +optional=1
> >>> +
> >>> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.REF_XCLK
> >>> +[event20:base-stat]
> >>> +fd=20
> >>> +type=4
> >>> +config=316
> >>> +optional=1
> >>> +
> >>> +# PERF_TYPE_RAW / IDQ_UOPS_NOT_DELIVERED.CORE
> >>> +[event21:base-stat]
> >>> +fd=21
> >>> +type=4
> >>> +config=412
> >>> +optional=1
> >>> +
> >>> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.ONE_THREAD_ACTIVE
> >>> +[event22:base-stat]
> >>> +fd=22
> >>> +type=4
> >>> +config=572
> >>> +optional=1
> >>> +
> >>> +# PERF_TYPE_RAW / UOPS_RETIRED.RETIRE_SLOTS
> >>
> >>
> >> Most of the newly added events are non-architectural events. The event
> >> name and the encoding could be changed later. I don't think it's a good
> >> idea to hard code them in the test. Could we read the TopdownL1 metrics,
> >> get a event list at runtime, and then only test those events?
> >
> > Not really, this test fix is targeting 6.4 which shouldn't be a moving
> > target. We can do something better in 6.5.
> What's the problem the patch trying to fix? Is it user visiable? Does
> the perf test fail?
>
> I want to understand why we need such temporary fix.

So the test has issues, we should fix these perhaps by making the
wrapper a shell test, as these lack the robustness issues. On my
Skylake testing had yielded "Skip" and my Tigerlake testing had
yielded "Ok" but if I altered my directory it changed to "Failed".
Arnaldo discovered the issue in recent testing and asked me to take a
look.

> >
> > Fwiw, on hybrid you get events on 2 PMUs, possibly with the PMU type
> > encoded in the high part of the config. Let's see how hybrid dealt
> > with this test:
> > https://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git/tree/tools/perf/tests/attr.c?h=perf-tools#n188
> > Oh.
> >
>
> If we don't know how to handle the hybrid, we can skip the test cases.
> We can add a specific case later in platform specifc test cases. I don't
> see any problem here.
>
> The temporary fix may not work for all the generations, especially for
> the future generations. It's very likely that we still run 6.4 on a
> future platform with a different formula. Then it may bring problems, no?

No, because we're using json encoded metrics and events which are
built into the perf tool. When we map the cpuid for the future
generation CPU to the json we'll not find anything. This test marks
the events as optional, they aren't present on ARM and AMD, and vary
across Intel models, so the test will still pass as the optional
events weren't programmed and it doesn't matter that the optional
events weren't found. If the upstream json events/metrics change then
it won't affect the json built into the tool and assumed by the test,
so again the test won't break.

Fwiw, were sysfs events being used then this test is more brittle as
the tool and kernel releases aren't obviously aligned. We could get
the test to break by mixing the version of the test with the version
of the perf tool ¯\_(ツ)_/¯.

Thanks,
Ian

> Thanks,
> Kan
>
> > Thanks,
> > Ian
> >
> >> Thanks,
> >> Kan
> >>
> >>> +[event23:base-stat]
> >>> +fd=23
> >>> +type=4
> >>> +config=706
> >>> +optional=1
> >>> +
> >>> +# PERF_TYPE_RAW / UOPS_ISSUED.ANY
> >>> +[event24:base-stat]
> >>> +fd=24
> >>> +type=4
> >>> +config=270
> >>>  optional=1
> >>> diff --git a/tools/perf/tests/attr/test-stat-detailed-1 b/tools/perf/tests/attr/test-stat-detailed-1
> >>> index b656ab93c5bf..1c52cb05c900 100644
> >>> --- a/tools/perf/tests/attr/test-stat-detailed-1
> >>> +++ b/tools/perf/tests/attr/test-stat-detailed-1
> >>> @@ -90,89 +90,108 @@ enable_on_exec=0
> >>>  read_format=15
> >>>  optional=1
> >>>
> >>> -# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
> >>> +# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
> >>>  [event13:base-stat]
> >>>  fd=13
> >>>  group_fd=11
> >>>  type=4
> >>> -config=33024
> >>> +config=33280
> >>>  disabled=0
> >>>  enable_on_exec=0
> >>>  read_format=15
> >>>  optional=1
> >>>
> >>> -# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
> >>> +# PERF_TYPE_RAW / topdown-be-bound (0x8300)
> >>>  [event14:base-stat]
> >>>  fd=14
> >>>  group_fd=11
> >>>  type=4
> >>> -config=33280
> >>> +config=33536
> >>>  disabled=0
> >>>  enable_on_exec=0
> >>>  read_format=15
> >>>  optional=1
> >>>
> >>> -# PERF_TYPE_RAW / topdown-be-bound (0x8300)
> >>> +# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
> >>>  [event15:base-stat]
> >>>  fd=15
> >>>  group_fd=11
> >>>  type=4
> >>> -config=33536
> >>> +config=33024
> >>>  disabled=0
> >>>  enable_on_exec=0
> >>>  read_format=15
> >>>  optional=1
> >>>
> >>> -# PERF_TYPE_RAW / topdown-heavy-ops (0x8400)
> >>> +# PERF_TYPE_RAW / INT_MISC.UOP_DROPPING
> >>>  [event16:base-stat]
> >>>  fd=16
> >>> -group_fd=11
> >>>  type=4
> >>> -config=33792
> >>> -disabled=0
> >>> -enable_on_exec=0
> >>> -read_format=15
> >>> +config=4109
> >>>  optional=1
> >>>
> >>> -# PERF_TYPE_RAW / topdown-br-mispredict (0x8500)
> >>> +# PERF_TYPE_RAW / cpu/INT_MISC.RECOVERY_CYCLES,cmask=1,edge/
> >>>  [event17:base-stat]
> >>>  fd=17
> >>> -group_fd=11
> >>>  type=4
> >>> -config=34048
> >>> -disabled=0
> >>> -enable_on_exec=0
> >>> -read_format=15
> >>> +config=17039629
> >>>  optional=1
> >>>
> >>> -# PERF_TYPE_RAW / topdown-fetch-lat (0x8600)
> >>> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.THREAD
> >>>  [event18:base-stat]
> >>>  fd=18
> >>> -group_fd=11
> >>>  type=4
> >>> -config=34304
> >>> -disabled=0
> >>> -enable_on_exec=0
> >>> -read_format=15
> >>> +config=60
> >>>  optional=1
> >>>
> >>> -# PERF_TYPE_RAW / topdown-mem-bound (0x8700)
> >>> +# PERF_TYPE_RAW / INT_MISC.RECOVERY_CYCLES_ANY
> >>>  [event19:base-stat]
> >>>  fd=19
> >>> -group_fd=11
> >>>  type=4
> >>> -config=34560
> >>> -disabled=0
> >>> -enable_on_exec=0
> >>> -read_format=15
> >>> +config=2097421
> >>> +optional=1
> >>> +
> >>> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.REF_XCLK
> >>> +[event20:base-stat]
> >>> +fd=20
> >>> +type=4
> >>> +config=316
> >>> +optional=1
> >>> +
> >>> +# PERF_TYPE_RAW / IDQ_UOPS_NOT_DELIVERED.CORE
> >>> +[event21:base-stat]
> >>> +fd=21
> >>> +type=4
> >>> +config=412
> >>> +optional=1
> >>> +
> >>> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.ONE_THREAD_ACTIVE
> >>> +[event22:base-stat]
> >>> +fd=22
> >>> +type=4
> >>> +config=572
> >>> +optional=1
> >>> +
> >>> +# PERF_TYPE_RAW / UOPS_RETIRED.RETIRE_SLOTS
> >>> +[event23:base-stat]
> >>> +fd=23
> >>> +type=4
> >>> +config=706
> >>> +optional=1
> >>> +
> >>> +# PERF_TYPE_RAW / UOPS_ISSUED.ANY
> >>> +[event24:base-stat]
> >>> +fd=24
> >>> +type=4
> >>> +config=270
> >>>  optional=1
> >>>
> >>>  # PERF_TYPE_HW_CACHE /
> >>>  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
> >>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >>>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> >>> -[event20:base-stat]
> >>> -fd=20
> >>> +[event25:base-stat]
> >>> +fd=25
> >>>  type=3
> >>>  config=0
> >>>  optional=1
> >>> @@ -181,8 +200,8 @@ optional=1
> >>>  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
> >>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >>>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> >>> -[event21:base-stat]
> >>> -fd=21
> >>> +[event26:base-stat]
> >>> +fd=26
> >>>  type=3
> >>>  config=65536
> >>>  optional=1
> >>> @@ -191,8 +210,8 @@ optional=1
> >>>  #  PERF_COUNT_HW_CACHE_LL                 <<  0  |
> >>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >>>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> >>> -[event22:base-stat]
> >>> -fd=22
> >>> +[event27:base-stat]
> >>> +fd=27
> >>>  type=3
> >>>  config=2
> >>>  optional=1
> >>> @@ -201,8 +220,8 @@ optional=1
> >>>  #  PERF_COUNT_HW_CACHE_LL                 <<  0  |
> >>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >>>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> >>> -[event23:base-stat]
> >>> -fd=23
> >>> +[event28:base-stat]
> >>> +fd=28
> >>>  type=3
> >>>  config=65538
> >>>  optional=1
> >>> diff --git a/tools/perf/tests/attr/test-stat-detailed-2 b/tools/perf/tests/attr/test-stat-detailed-2
> >>> index 97625090a1c4..7e961d24a885 100644
> >>> --- a/tools/perf/tests/attr/test-stat-detailed-2
> >>> +++ b/tools/perf/tests/attr/test-stat-detailed-2
> >>> @@ -90,89 +90,108 @@ enable_on_exec=0
> >>>  read_format=15
> >>>  optional=1
> >>>
> >>> -# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
> >>> +# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
> >>>  [event13:base-stat]
> >>>  fd=13
> >>>  group_fd=11
> >>>  type=4
> >>> -config=33024
> >>> +config=33280
> >>>  disabled=0
> >>>  enable_on_exec=0
> >>>  read_format=15
> >>>  optional=1
> >>>
> >>> -# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
> >>> +# PERF_TYPE_RAW / topdown-be-bound (0x8300)
> >>>  [event14:base-stat]
> >>>  fd=14
> >>>  group_fd=11
> >>>  type=4
> >>> -config=33280
> >>> +config=33536
> >>>  disabled=0
> >>>  enable_on_exec=0
> >>>  read_format=15
> >>>  optional=1
> >>>
> >>> -# PERF_TYPE_RAW / topdown-be-bound (0x8300)
> >>> +# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
> >>>  [event15:base-stat]
> >>>  fd=15
> >>>  group_fd=11
> >>>  type=4
> >>> -config=33536
> >>> +config=33024
> >>>  disabled=0
> >>>  enable_on_exec=0
> >>>  read_format=15
> >>>  optional=1
> >>>
> >>> -# PERF_TYPE_RAW / topdown-heavy-ops (0x8400)
> >>> +# PERF_TYPE_RAW / INT_MISC.UOP_DROPPING
> >>>  [event16:base-stat]
> >>>  fd=16
> >>> -group_fd=11
> >>>  type=4
> >>> -config=33792
> >>> -disabled=0
> >>> -enable_on_exec=0
> >>> -read_format=15
> >>> +config=4109
> >>>  optional=1
> >>>
> >>> -# PERF_TYPE_RAW / topdown-br-mispredict (0x8500)
> >>> +# PERF_TYPE_RAW / cpu/INT_MISC.RECOVERY_CYCLES,cmask=1,edge/
> >>>  [event17:base-stat]
> >>>  fd=17
> >>> -group_fd=11
> >>>  type=4
> >>> -config=34048
> >>> -disabled=0
> >>> -enable_on_exec=0
> >>> -read_format=15
> >>> +config=17039629
> >>>  optional=1
> >>>
> >>> -# PERF_TYPE_RAW / topdown-fetch-lat (0x8600)
> >>> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.THREAD
> >>>  [event18:base-stat]
> >>>  fd=18
> >>> -group_fd=11
> >>>  type=4
> >>> -config=34304
> >>> -disabled=0
> >>> -enable_on_exec=0
> >>> -read_format=15
> >>> +config=60
> >>>  optional=1
> >>>
> >>> -# PERF_TYPE_RAW / topdown-mem-bound (0x8700)
> >>> +# PERF_TYPE_RAW / INT_MISC.RECOVERY_CYCLES_ANY
> >>>  [event19:base-stat]
> >>>  fd=19
> >>> -group_fd=11
> >>>  type=4
> >>> -config=34560
> >>> -disabled=0
> >>> -enable_on_exec=0
> >>> -read_format=15
> >>> +config=2097421
> >>> +optional=1
> >>> +
> >>> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.REF_XCLK
> >>> +[event20:base-stat]
> >>> +fd=20
> >>> +type=4
> >>> +config=316
> >>> +optional=1
> >>> +
> >>> +# PERF_TYPE_RAW / IDQ_UOPS_NOT_DELIVERED.CORE
> >>> +[event21:base-stat]
> >>> +fd=21
> >>> +type=4
> >>> +config=412
> >>> +optional=1
> >>> +
> >>> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.ONE_THREAD_ACTIVE
> >>> +[event22:base-stat]
> >>> +fd=22
> >>> +type=4
> >>> +config=572
> >>> +optional=1
> >>> +
> >>> +# PERF_TYPE_RAW / UOPS_RETIRED.RETIRE_SLOTS
> >>> +[event23:base-stat]
> >>> +fd=23
> >>> +type=4
> >>> +config=706
> >>> +optional=1
> >>> +
> >>> +# PERF_TYPE_RAW / UOPS_ISSUED.ANY
> >>> +[event24:base-stat]
> >>> +fd=24
> >>> +type=4
> >>> +config=270
> >>>  optional=1
> >>>
> >>>  # PERF_TYPE_HW_CACHE /
> >>>  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
> >>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >>>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> >>> -[event20:base-stat]
> >>> -fd=20
> >>> +[event25:base-stat]
> >>> +fd=25
> >>>  type=3
> >>>  config=0
> >>>  optional=1
> >>> @@ -181,8 +200,8 @@ optional=1
> >>>  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
> >>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >>>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> >>> -[event21:base-stat]
> >>> -fd=21
> >>> +[event26:base-stat]
> >>> +fd=26
> >>>  type=3
> >>>  config=65536
> >>>  optional=1
> >>> @@ -191,8 +210,8 @@ optional=1
> >>>  #  PERF_COUNT_HW_CACHE_LL                 <<  0  |
> >>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >>>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> >>> -[event22:base-stat]
> >>> -fd=22
> >>> +[event27:base-stat]
> >>> +fd=27
> >>>  type=3
> >>>  config=2
> >>>  optional=1
> >>> @@ -201,8 +220,8 @@ optional=1
> >>>  #  PERF_COUNT_HW_CACHE_LL                 <<  0  |
> >>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >>>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> >>> -[event23:base-stat]
> >>> -fd=23
> >>> +[event28:base-stat]
> >>> +fd=28
> >>>  type=3
> >>>  config=65538
> >>>  optional=1
> >>> @@ -211,8 +230,8 @@ optional=1
> >>>  #  PERF_COUNT_HW_CACHE_L1I                <<  0  |
> >>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >>>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> >>> -[event24:base-stat]
> >>> -fd=24
> >>> +[event29:base-stat]
> >>> +fd=29
> >>>  type=3
> >>>  config=1
> >>>  optional=1
> >>> @@ -221,8 +240,8 @@ optional=1
> >>>  #  PERF_COUNT_HW_CACHE_L1I                <<  0  |
> >>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >>>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> >>> -[event25:base-stat]
> >>> -fd=25
> >>> +[event30:base-stat]
> >>> +fd=30
> >>>  type=3
> >>>  config=65537
> >>>  optional=1
> >>> @@ -231,8 +250,8 @@ optional=1
> >>>  #  PERF_COUNT_HW_CACHE_DTLB               <<  0  |
> >>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >>>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> >>> -[event26:base-stat]
> >>> -fd=26
> >>> +[event31:base-stat]
> >>> +fd=31
> >>>  type=3
> >>>  config=3
> >>>  optional=1
> >>> @@ -241,8 +260,8 @@ optional=1
> >>>  #  PERF_COUNT_HW_CACHE_DTLB               <<  0  |
> >>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >>>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> >>> -[event27:base-stat]
> >>> -fd=27
> >>> +[event32:base-stat]
> >>> +fd=32
> >>>  type=3
> >>>  config=65539
> >>>  optional=1
> >>> @@ -251,8 +270,8 @@ optional=1
> >>>  #  PERF_COUNT_HW_CACHE_ITLB               <<  0  |
> >>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >>>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> >>> -[event28:base-stat]
> >>> -fd=28
> >>> +[event33:base-stat]
> >>> +fd=33
> >>>  type=3
> >>>  config=4
> >>>  optional=1
> >>> @@ -261,8 +280,8 @@ optional=1
> >>>  #  PERF_COUNT_HW_CACHE_ITLB               <<  0  |
> >>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >>>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> >>> -[event29:base-stat]
> >>> -fd=29
> >>> +[event34:base-stat]
> >>> +fd=34
> >>>  type=3
> >>>  config=65540
> >>>  optional=1
> >>> diff --git a/tools/perf/tests/attr/test-stat-detailed-3 b/tools/perf/tests/attr/test-stat-detailed-3
> >>> index d555042e3fbf..e50535f45977 100644
> >>> --- a/tools/perf/tests/attr/test-stat-detailed-3
> >>> +++ b/tools/perf/tests/attr/test-stat-detailed-3
> >>> @@ -90,89 +90,108 @@ enable_on_exec=0
> >>>  read_format=15
> >>>  optional=1
> >>>
> >>> -# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
> >>> +# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
> >>>  [event13:base-stat]
> >>>  fd=13
> >>>  group_fd=11
> >>>  type=4
> >>> -config=33024
> >>> +config=33280
> >>>  disabled=0
> >>>  enable_on_exec=0
> >>>  read_format=15
> >>>  optional=1
> >>>
> >>> -# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
> >>> +# PERF_TYPE_RAW / topdown-be-bound (0x8300)
> >>>  [event14:base-stat]
> >>>  fd=14
> >>>  group_fd=11
> >>>  type=4
> >>> -config=33280
> >>> +config=33536
> >>>  disabled=0
> >>>  enable_on_exec=0
> >>>  read_format=15
> >>>  optional=1
> >>>
> >>> -# PERF_TYPE_RAW / topdown-be-bound (0x8300)
> >>> +# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
> >>>  [event15:base-stat]
> >>>  fd=15
> >>>  group_fd=11
> >>>  type=4
> >>> -config=33536
> >>> +config=33024
> >>>  disabled=0
> >>>  enable_on_exec=0
> >>>  read_format=15
> >>>  optional=1
> >>>
> >>> -# PERF_TYPE_RAW / topdown-heavy-ops (0x8400)
> >>> +# PERF_TYPE_RAW / INT_MISC.UOP_DROPPING
> >>>  [event16:base-stat]
> >>>  fd=16
> >>> -group_fd=11
> >>>  type=4
> >>> -config=33792
> >>> -disabled=0
> >>> -enable_on_exec=0
> >>> -read_format=15
> >>> +config=4109
> >>>  optional=1
> >>>
> >>> -# PERF_TYPE_RAW / topdown-br-mispredict (0x8500)
> >>> +# PERF_TYPE_RAW / cpu/INT_MISC.RECOVERY_CYCLES,cmask=1,edge/
> >>>  [event17:base-stat]
> >>>  fd=17
> >>> -group_fd=11
> >>>  type=4
> >>> -config=34048
> >>> -disabled=0
> >>> -enable_on_exec=0
> >>> -read_format=15
> >>> +config=17039629
> >>>  optional=1
> >>>
> >>> -# PERF_TYPE_RAW / topdown-fetch-lat (0x8600)
> >>> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.THREAD
> >>>  [event18:base-stat]
> >>>  fd=18
> >>> -group_fd=11
> >>>  type=4
> >>> -config=34304
> >>> -disabled=0
> >>> -enable_on_exec=0
> >>> -read_format=15
> >>> +config=60
> >>>  optional=1
> >>>
> >>> -# PERF_TYPE_RAW / topdown-mem-bound (0x8700)
> >>> +# PERF_TYPE_RAW / INT_MISC.RECOVERY_CYCLES_ANY
> >>>  [event19:base-stat]
> >>>  fd=19
> >>> -group_fd=11
> >>>  type=4
> >>> -config=34560
> >>> -disabled=0
> >>> -enable_on_exec=0
> >>> -read_format=15
> >>> +config=2097421
> >>> +optional=1
> >>> +
> >>> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.REF_XCLK
> >>> +[event20:base-stat]
> >>> +fd=20
> >>> +type=4
> >>> +config=316
> >>> +optional=1
> >>> +
> >>> +# PERF_TYPE_RAW / IDQ_UOPS_NOT_DELIVERED.CORE
> >>> +[event21:base-stat]
> >>> +fd=21
> >>> +type=4
> >>> +config=412
> >>> +optional=1
> >>> +
> >>> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.ONE_THREAD_ACTIVE
> >>> +[event22:base-stat]
> >>> +fd=22
> >>> +type=4
> >>> +config=572
> >>> +optional=1
> >>> +
> >>> +# PERF_TYPE_RAW / UOPS_RETIRED.RETIRE_SLOTS
> >>> +[event23:base-stat]
> >>> +fd=23
> >>> +type=4
> >>> +config=706
> >>> +optional=1
> >>> +
> >>> +# PERF_TYPE_RAW / UOPS_ISSUED.ANY
> >>> +[event24:base-stat]
> >>> +fd=24
> >>> +type=4
> >>> +config=270
> >>>  optional=1
> >>>
> >>>  # PERF_TYPE_HW_CACHE /
> >>>  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
> >>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >>>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> >>> -[event20:base-stat]
> >>> -fd=20
> >>> +[event25:base-stat]
> >>> +fd=25
> >>>  type=3
> >>>  config=0
> >>>  optional=1
> >>> @@ -181,8 +200,8 @@ optional=1
> >>>  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
> >>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >>>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> >>> -[event21:base-stat]
> >>> -fd=21
> >>> +[event26:base-stat]
> >>> +fd=26
> >>>  type=3
> >>>  config=65536
> >>>  optional=1
> >>> @@ -191,8 +210,8 @@ optional=1
> >>>  #  PERF_COUNT_HW_CACHE_LL                 <<  0  |
> >>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >>>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> >>> -[event22:base-stat]
> >>> -fd=22
> >>> +[event27:base-stat]
> >>> +fd=27
> >>>  type=3
> >>>  config=2
> >>>  optional=1
> >>> @@ -201,8 +220,8 @@ optional=1
> >>>  #  PERF_COUNT_HW_CACHE_LL                 <<  0  |
> >>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >>>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> >>> -[event23:base-stat]
> >>> -fd=23
> >>> +[event28:base-stat]
> >>> +fd=28
> >>>  type=3
> >>>  config=65538
> >>>  optional=1
> >>> @@ -211,8 +230,8 @@ optional=1
> >>>  #  PERF_COUNT_HW_CACHE_L1I                <<  0  |
> >>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >>>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> >>> -[event24:base-stat]
> >>> -fd=24
> >>> +[event29:base-stat]
> >>> +fd=29
> >>>  type=3
> >>>  config=1
> >>>  optional=1
> >>> @@ -221,8 +240,8 @@ optional=1
> >>>  #  PERF_COUNT_HW_CACHE_L1I                <<  0  |
> >>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >>>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> >>> -[event25:base-stat]
> >>> -fd=25
> >>> +[event30:base-stat]
> >>> +fd=30
> >>>  type=3
> >>>  config=65537
> >>>  optional=1
> >>> @@ -231,8 +250,8 @@ optional=1
> >>>  #  PERF_COUNT_HW_CACHE_DTLB               <<  0  |
> >>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >>>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> >>> -[event26:base-stat]
> >>> -fd=26
> >>> +[event31:base-stat]
> >>> +fd=31
> >>>  type=3
> >>>  config=3
> >>>  optional=1
> >>> @@ -241,8 +260,8 @@ optional=1
> >>>  #  PERF_COUNT_HW_CACHE_DTLB               <<  0  |
> >>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >>>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> >>> -[event27:base-stat]
> >>> -fd=27
> >>> +[event32:base-stat]
> >>> +fd=32
> >>>  type=3
> >>>  config=65539
> >>>  optional=1
> >>> @@ -251,8 +270,8 @@ optional=1
> >>>  #  PERF_COUNT_HW_CACHE_ITLB               <<  0  |
> >>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >>>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> >>> -[event28:base-stat]
> >>> -fd=28
> >>> +[event33:base-stat]
> >>> +fd=33
> >>>  type=3
> >>>  config=4
> >>>  optional=1
> >>> @@ -261,8 +280,8 @@ optional=1
> >>>  #  PERF_COUNT_HW_CACHE_ITLB               <<  0  |
> >>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
> >>>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> >>> -[event29:base-stat]
> >>> -fd=29
> >>> +[event34:base-stat]
> >>> +fd=34
> >>>  type=3
> >>>  config=65540
> >>>  optional=1
> >>> @@ -271,8 +290,8 @@ optional=1
> >>>  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
> >>>  # (PERF_COUNT_HW_CACHE_OP_PREFETCH        <<  8) |
> >>>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
> >>> -[event30:base-stat]
> >>> -fd=30
> >>> +[event35:base-stat]
> >>> +fd=35
> >>>  type=3
> >>>  config=512
> >>>  optional=1
> >>> @@ -281,8 +300,8 @@ optional=1
> >>>  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
> >>>  # (PERF_COUNT_HW_CACHE_OP_PREFETCH        <<  8) |
> >>>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
> >>> -[event31:base-stat]
> >>> -fd=31
> >>> +[event36:base-stat]
> >>> +fd=36
> >>>  type=3
> >>>  config=66048
> >>>  optional=1

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH v1 1/2] perf test attr: Update no event/metric expectations
  2023-05-18 16:36       ` Ian Rogers
@ 2023-05-18 17:36         ` Liang, Kan
  0 siblings, 0 replies; 14+ messages in thread
From: Liang, Kan @ 2023-05-18 17:36 UTC (permalink / raw)
  To: Ian Rogers
  Cc: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo,
	Mark Rutland, Alexander Shishkin, Jiri Olsa, Namhyung Kim,
	Adrian Hunter, James Clark, Thomas Richter, linux-perf-users,
	linux-kernel



On 2023-05-18 12:36 p.m., Ian Rogers wrote:
> On Thu, May 18, 2023 at 7:40 AM Liang, Kan <kan.liang@linux.intel.com> wrote:
>>
>>
>>
>> On 2023-05-18 10:10 a.m., Ian Rogers wrote:
>>> On Thu, May 18, 2023 at 6:01 AM Liang, Kan <kan.liang@linux.intel.com> wrote:
>>>>
>>>>
>>>>
>>>> On 2023-05-17 6:57 p.m., Ian Rogers wrote:
>>>>> Previously hard coded events/metrics were used, update for the use of
>>>>> the TopdownL1 json metric group.
>>>>>
>>>>> Fixes: 94b1a603fca7 ("perf stat: Add TopdownL1 metric as a default if present")
>>>>> Signed-off-by: Ian Rogers <irogers@google.com>
>>>>> ---
>>>>>  tools/perf/tests/attr/base-stat            |   2 +-
>>>>>  tools/perf/tests/attr/test-stat-default    |  80 ++++++++-----
>>>>>  tools/perf/tests/attr/test-stat-detailed-1 |  95 +++++++++------
>>>>>  tools/perf/tests/attr/test-stat-detailed-2 | 119 +++++++++++--------
>>>>>  tools/perf/tests/attr/test-stat-detailed-3 | 127 ++++++++++++---------
>>>>>  5 files changed, 249 insertions(+), 174 deletions(-)
>>>>>
>>>>> diff --git a/tools/perf/tests/attr/base-stat b/tools/perf/tests/attr/base-stat
>>>>> index a21fb65bc012..fccd8ec4d1b0 100644
>>>>> --- a/tools/perf/tests/attr/base-stat
>>>>> +++ b/tools/perf/tests/attr/base-stat
>>>>> @@ -16,7 +16,7 @@ pinned=0
>>>>>  exclusive=0
>>>>>  exclude_user=0
>>>>>  exclude_kernel=0|1
>>>>> -exclude_hv=0
>>>>> +exclude_hv=0|1
>>>>>  exclude_idle=0
>>>>>  mmap=0
>>>>>  comm=0
>>>>> diff --git a/tools/perf/tests/attr/test-stat-default b/tools/perf/tests/attr/test-stat-default
>>>>> index d8ea6a88163f..a1e2da0a9a6d 100644
>>>>> --- a/tools/perf/tests/attr/test-stat-default
>>>>> +++ b/tools/perf/tests/attr/test-stat-default
>>>>> @@ -40,7 +40,6 @@ fd=6
>>>>>  type=0
>>>>>  config=7
>>>>>  optional=1
>>>>> -
>>>>>  # PERF_TYPE_HARDWARE / PERF_COUNT_HW_STALLED_CYCLES_BACKEND
>>>>>  [event7:base-stat]
>>>>>  fd=7
>>>>> @@ -89,79 +88,98 @@ enable_on_exec=0
>>>>>  read_format=15
>>>>>  optional=1
>>>>>
>>>>> -# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
>>>>> +# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
>>>>>  [event13:base-stat]
>>>>>  fd=13
>>>>>  group_fd=11
>>>>>  type=4
>>>>> -config=33024
>>>>> +config=33280
>>>>>  disabled=0
>>>>>  enable_on_exec=0
>>>>>  read_format=15
>>>>>  optional=1
>>>>>
>>>>> -# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
>>>>> +# PERF_TYPE_RAW / topdown-be-bound (0x8300)
>>>>>  [event14:base-stat]
>>>>>  fd=14
>>>>>  group_fd=11
>>>>>  type=4
>>>>> -config=33280
>>>>> +config=33536
>>>>>  disabled=0
>>>>>  enable_on_exec=0
>>>>>  read_format=15
>>>>>  optional=1
>>>>>
>>>>> -# PERF_TYPE_RAW / topdown-be-bound (0x8300)
>>>>> +# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
>>>>>  [event15:base-stat]
>>>>>  fd=15
>>>>>  group_fd=11
>>>>>  type=4
>>>>> -config=33536
>>>>> +config=33024
>>>>>  disabled=0
>>>>>  enable_on_exec=0
>>>>>  read_format=15
>>>>>  optional=1
>>>>>
>>>>> -# PERF_TYPE_RAW / topdown-heavy-ops (0x8400)
>>>>> +# PERF_TYPE_RAW / INT_MISC.UOP_DROPPING
>>>>>  [event16:base-stat]
>>>>>  fd=16
>>>>> -group_fd=11
>>>>>  type=4
>>>>> -config=33792
>>>>> -disabled=0
>>>>> -enable_on_exec=0
>>>>> -read_format=15
>>>>> +config=4109
>>>>>  optional=1
>>>>>
>>>>> -# PERF_TYPE_RAW / topdown-br-mispredict (0x8500)
>>>>> +# PERF_TYPE_RAW / cpu/INT_MISC.RECOVERY_CYCLES,cmask=1,edge/
>>>>>  [event17:base-stat]
>>>>>  fd=17
>>>>> -group_fd=11
>>>>>  type=4
>>>>> -config=34048
>>>>> -disabled=0
>>>>> -enable_on_exec=0
>>>>> -read_format=15
>>>>> +config=17039629
>>>>>  optional=1
>>>>>
>>>>> -# PERF_TYPE_RAW / topdown-fetch-lat (0x8600)
>>>>> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.THREAD
>>>>>  [event18:base-stat]
>>>>>  fd=18
>>>>> -group_fd=11
>>>>>  type=4
>>>>> -config=34304
>>>>> -disabled=0
>>>>> -enable_on_exec=0
>>>>> -read_format=15
>>>>> +config=60
>>>>>  optional=1
>>>>>
>>>>> -# PERF_TYPE_RAW / topdown-mem-bound (0x8700)
>>>>> +# PERF_TYPE_RAW / INT_MISC.RECOVERY_CYCLES_ANY
>>>>>  [event19:base-stat]
>>>>>  fd=19
>>>>> -group_fd=11
>>>>>  type=4
>>>>> -config=34560
>>>>> -disabled=0
>>>>> -enable_on_exec=0
>>>>> -read_format=15
>>>>> +config=2097421
>>>>> +optional=1
>>>>> +
>>>>> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.REF_XCLK
>>>>> +[event20:base-stat]
>>>>> +fd=20
>>>>> +type=4
>>>>> +config=316
>>>>> +optional=1
>>>>> +
>>>>> +# PERF_TYPE_RAW / IDQ_UOPS_NOT_DELIVERED.CORE
>>>>> +[event21:base-stat]
>>>>> +fd=21
>>>>> +type=4
>>>>> +config=412
>>>>> +optional=1
>>>>> +
>>>>> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.ONE_THREAD_ACTIVE
>>>>> +[event22:base-stat]
>>>>> +fd=22
>>>>> +type=4
>>>>> +config=572
>>>>> +optional=1
>>>>> +
>>>>> +# PERF_TYPE_RAW / UOPS_RETIRED.RETIRE_SLOTS
>>>>
>>>>
>>>> Most of the newly added events are non-architectural events. The event
>>>> name and the encoding could be changed later. I don't think it's a good
>>>> idea to hard code them in the test. Could we read the TopdownL1 metrics,
>>>> get a event list at runtime, and then only test those events?
>>>
>>> Not really, this test fix is targeting 6.4 which shouldn't be a moving
>>> target. We can do something better in 6.5.
>> What's the problem the patch trying to fix? Is it user visiable? Does
>> the perf test fail?
>>
>> I want to understand why we need such temporary fix.
> 
> So the test has issues, we should fix these perhaps by making the
> wrapper a shell test, as these lack the robustness issues. On my
> Skylake testing had yielded "Skip" and my Tigerlake testing had
> yielded "Ok" but if I altered my directory it changed to "Failed".
> Arnaldo discovered the issue in recent testing and asked me to take a
> look.

Yes, I can see the "Failed" on one of my machine now.

> 
>>>
>>> Fwiw, on hybrid you get events on 2 PMUs, possibly with the PMU type
>>> encoded in the high part of the config. Let's see how hybrid dealt
>>> with this test:
>>> https://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git/tree/tools/perf/tests/attr.c?h=perf-tools#n188
>>> Oh.
>>>
>>
>> If we don't know how to handle the hybrid, we can skip the test cases.
>> We can add a specific case later in platform specifc test cases. I don't
>> see any problem here.
>>
>> The temporary fix may not work for all the generations, especially for
>> the future generations. It's very likely that we still run 6.4 on a
>> future platform with a different formula. Then it may bring problems, no?
> 
> No, because we're using json encoded metrics and events which are
> built into the perf tool. When we map the cpuid for the future
> generation CPU to the json we'll not find anything. This test marks
> the events as optional, they aren't present on ARM and AMD, and vary
> across Intel models, so the test will still pass as the optional
> events weren't programmed and it doesn't matter that the optional
> events weren't found. If the upstream json events/metrics change then
> it won't affect the json built into the tool and assumed by the test,
> so again the test won't break.

Right, the default depends on the JSON metric now. It should not be
available on the new platforms unless we update the tool. Those
non-architetural events can be ignored.

The only problem is that we have to keep updating the test once the
formular is changed. If so, I agree that the improvement can be done
later separately.

Thanks,
Kan
> 
> Fwiw, were sysfs events being used then this test is more brittle as
> the tool and kernel releases aren't obviously aligned. We could get
> the test to break by mixing the version of the test with the version
> of the perf tool ¯\_(ツ)_/¯.
> 
> Thanks,
> Ian
> 
>> Thanks,
>> Kan
>>
>>> Thanks,
>>> Ian
>>>
>>>> Thanks,
>>>> Kan
>>>>
>>>>> +[event23:base-stat]
>>>>> +fd=23
>>>>> +type=4
>>>>> +config=706
>>>>> +optional=1
>>>>> +
>>>>> +# PERF_TYPE_RAW / UOPS_ISSUED.ANY
>>>>> +[event24:base-stat]
>>>>> +fd=24
>>>>> +type=4
>>>>> +config=270
>>>>>  optional=1
>>>>> diff --git a/tools/perf/tests/attr/test-stat-detailed-1 b/tools/perf/tests/attr/test-stat-detailed-1
>>>>> index b656ab93c5bf..1c52cb05c900 100644
>>>>> --- a/tools/perf/tests/attr/test-stat-detailed-1
>>>>> +++ b/tools/perf/tests/attr/test-stat-detailed-1
>>>>> @@ -90,89 +90,108 @@ enable_on_exec=0
>>>>>  read_format=15
>>>>>  optional=1
>>>>>
>>>>> -# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
>>>>> +# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
>>>>>  [event13:base-stat]
>>>>>  fd=13
>>>>>  group_fd=11
>>>>>  type=4
>>>>> -config=33024
>>>>> +config=33280
>>>>>  disabled=0
>>>>>  enable_on_exec=0
>>>>>  read_format=15
>>>>>  optional=1
>>>>>
>>>>> -# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
>>>>> +# PERF_TYPE_RAW / topdown-be-bound (0x8300)
>>>>>  [event14:base-stat]
>>>>>  fd=14
>>>>>  group_fd=11
>>>>>  type=4
>>>>> -config=33280
>>>>> +config=33536
>>>>>  disabled=0
>>>>>  enable_on_exec=0
>>>>>  read_format=15
>>>>>  optional=1
>>>>>
>>>>> -# PERF_TYPE_RAW / topdown-be-bound (0x8300)
>>>>> +# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
>>>>>  [event15:base-stat]
>>>>>  fd=15
>>>>>  group_fd=11
>>>>>  type=4
>>>>> -config=33536
>>>>> +config=33024
>>>>>  disabled=0
>>>>>  enable_on_exec=0
>>>>>  read_format=15
>>>>>  optional=1
>>>>>
>>>>> -# PERF_TYPE_RAW / topdown-heavy-ops (0x8400)
>>>>> +# PERF_TYPE_RAW / INT_MISC.UOP_DROPPING
>>>>>  [event16:base-stat]
>>>>>  fd=16
>>>>> -group_fd=11
>>>>>  type=4
>>>>> -config=33792
>>>>> -disabled=0
>>>>> -enable_on_exec=0
>>>>> -read_format=15
>>>>> +config=4109
>>>>>  optional=1
>>>>>
>>>>> -# PERF_TYPE_RAW / topdown-br-mispredict (0x8500)
>>>>> +# PERF_TYPE_RAW / cpu/INT_MISC.RECOVERY_CYCLES,cmask=1,edge/
>>>>>  [event17:base-stat]
>>>>>  fd=17
>>>>> -group_fd=11
>>>>>  type=4
>>>>> -config=34048
>>>>> -disabled=0
>>>>> -enable_on_exec=0
>>>>> -read_format=15
>>>>> +config=17039629
>>>>>  optional=1
>>>>>
>>>>> -# PERF_TYPE_RAW / topdown-fetch-lat (0x8600)
>>>>> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.THREAD
>>>>>  [event18:base-stat]
>>>>>  fd=18
>>>>> -group_fd=11
>>>>>  type=4
>>>>> -config=34304
>>>>> -disabled=0
>>>>> -enable_on_exec=0
>>>>> -read_format=15
>>>>> +config=60
>>>>>  optional=1
>>>>>
>>>>> -# PERF_TYPE_RAW / topdown-mem-bound (0x8700)
>>>>> +# PERF_TYPE_RAW / INT_MISC.RECOVERY_CYCLES_ANY
>>>>>  [event19:base-stat]
>>>>>  fd=19
>>>>> -group_fd=11
>>>>>  type=4
>>>>> -config=34560
>>>>> -disabled=0
>>>>> -enable_on_exec=0
>>>>> -read_format=15
>>>>> +config=2097421
>>>>> +optional=1
>>>>> +
>>>>> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.REF_XCLK
>>>>> +[event20:base-stat]
>>>>> +fd=20
>>>>> +type=4
>>>>> +config=316
>>>>> +optional=1
>>>>> +
>>>>> +# PERF_TYPE_RAW / IDQ_UOPS_NOT_DELIVERED.CORE
>>>>> +[event21:base-stat]
>>>>> +fd=21
>>>>> +type=4
>>>>> +config=412
>>>>> +optional=1
>>>>> +
>>>>> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.ONE_THREAD_ACTIVE
>>>>> +[event22:base-stat]
>>>>> +fd=22
>>>>> +type=4
>>>>> +config=572
>>>>> +optional=1
>>>>> +
>>>>> +# PERF_TYPE_RAW / UOPS_RETIRED.RETIRE_SLOTS
>>>>> +[event23:base-stat]
>>>>> +fd=23
>>>>> +type=4
>>>>> +config=706
>>>>> +optional=1
>>>>> +
>>>>> +# PERF_TYPE_RAW / UOPS_ISSUED.ANY
>>>>> +[event24:base-stat]
>>>>> +fd=24
>>>>> +type=4
>>>>> +config=270
>>>>>  optional=1
>>>>>
>>>>>  # PERF_TYPE_HW_CACHE /
>>>>>  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
>>>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>>>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
>>>>> -[event20:base-stat]
>>>>> -fd=20
>>>>> +[event25:base-stat]
>>>>> +fd=25
>>>>>  type=3
>>>>>  config=0
>>>>>  optional=1
>>>>> @@ -181,8 +200,8 @@ optional=1
>>>>>  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
>>>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>>>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
>>>>> -[event21:base-stat]
>>>>> -fd=21
>>>>> +[event26:base-stat]
>>>>> +fd=26
>>>>>  type=3
>>>>>  config=65536
>>>>>  optional=1
>>>>> @@ -191,8 +210,8 @@ optional=1
>>>>>  #  PERF_COUNT_HW_CACHE_LL                 <<  0  |
>>>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>>>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
>>>>> -[event22:base-stat]
>>>>> -fd=22
>>>>> +[event27:base-stat]
>>>>> +fd=27
>>>>>  type=3
>>>>>  config=2
>>>>>  optional=1
>>>>> @@ -201,8 +220,8 @@ optional=1
>>>>>  #  PERF_COUNT_HW_CACHE_LL                 <<  0  |
>>>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>>>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
>>>>> -[event23:base-stat]
>>>>> -fd=23
>>>>> +[event28:base-stat]
>>>>> +fd=28
>>>>>  type=3
>>>>>  config=65538
>>>>>  optional=1
>>>>> diff --git a/tools/perf/tests/attr/test-stat-detailed-2 b/tools/perf/tests/attr/test-stat-detailed-2
>>>>> index 97625090a1c4..7e961d24a885 100644
>>>>> --- a/tools/perf/tests/attr/test-stat-detailed-2
>>>>> +++ b/tools/perf/tests/attr/test-stat-detailed-2
>>>>> @@ -90,89 +90,108 @@ enable_on_exec=0
>>>>>  read_format=15
>>>>>  optional=1
>>>>>
>>>>> -# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
>>>>> +# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
>>>>>  [event13:base-stat]
>>>>>  fd=13
>>>>>  group_fd=11
>>>>>  type=4
>>>>> -config=33024
>>>>> +config=33280
>>>>>  disabled=0
>>>>>  enable_on_exec=0
>>>>>  read_format=15
>>>>>  optional=1
>>>>>
>>>>> -# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
>>>>> +# PERF_TYPE_RAW / topdown-be-bound (0x8300)
>>>>>  [event14:base-stat]
>>>>>  fd=14
>>>>>  group_fd=11
>>>>>  type=4
>>>>> -config=33280
>>>>> +config=33536
>>>>>  disabled=0
>>>>>  enable_on_exec=0
>>>>>  read_format=15
>>>>>  optional=1
>>>>>
>>>>> -# PERF_TYPE_RAW / topdown-be-bound (0x8300)
>>>>> +# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
>>>>>  [event15:base-stat]
>>>>>  fd=15
>>>>>  group_fd=11
>>>>>  type=4
>>>>> -config=33536
>>>>> +config=33024
>>>>>  disabled=0
>>>>>  enable_on_exec=0
>>>>>  read_format=15
>>>>>  optional=1
>>>>>
>>>>> -# PERF_TYPE_RAW / topdown-heavy-ops (0x8400)
>>>>> +# PERF_TYPE_RAW / INT_MISC.UOP_DROPPING
>>>>>  [event16:base-stat]
>>>>>  fd=16
>>>>> -group_fd=11
>>>>>  type=4
>>>>> -config=33792
>>>>> -disabled=0
>>>>> -enable_on_exec=0
>>>>> -read_format=15
>>>>> +config=4109
>>>>>  optional=1
>>>>>
>>>>> -# PERF_TYPE_RAW / topdown-br-mispredict (0x8500)
>>>>> +# PERF_TYPE_RAW / cpu/INT_MISC.RECOVERY_CYCLES,cmask=1,edge/
>>>>>  [event17:base-stat]
>>>>>  fd=17
>>>>> -group_fd=11
>>>>>  type=4
>>>>> -config=34048
>>>>> -disabled=0
>>>>> -enable_on_exec=0
>>>>> -read_format=15
>>>>> +config=17039629
>>>>>  optional=1
>>>>>
>>>>> -# PERF_TYPE_RAW / topdown-fetch-lat (0x8600)
>>>>> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.THREAD
>>>>>  [event18:base-stat]
>>>>>  fd=18
>>>>> -group_fd=11
>>>>>  type=4
>>>>> -config=34304
>>>>> -disabled=0
>>>>> -enable_on_exec=0
>>>>> -read_format=15
>>>>> +config=60
>>>>>  optional=1
>>>>>
>>>>> -# PERF_TYPE_RAW / topdown-mem-bound (0x8700)
>>>>> +# PERF_TYPE_RAW / INT_MISC.RECOVERY_CYCLES_ANY
>>>>>  [event19:base-stat]
>>>>>  fd=19
>>>>> -group_fd=11
>>>>>  type=4
>>>>> -config=34560
>>>>> -disabled=0
>>>>> -enable_on_exec=0
>>>>> -read_format=15
>>>>> +config=2097421
>>>>> +optional=1
>>>>> +
>>>>> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.REF_XCLK
>>>>> +[event20:base-stat]
>>>>> +fd=20
>>>>> +type=4
>>>>> +config=316
>>>>> +optional=1
>>>>> +
>>>>> +# PERF_TYPE_RAW / IDQ_UOPS_NOT_DELIVERED.CORE
>>>>> +[event21:base-stat]
>>>>> +fd=21
>>>>> +type=4
>>>>> +config=412
>>>>> +optional=1
>>>>> +
>>>>> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.ONE_THREAD_ACTIVE
>>>>> +[event22:base-stat]
>>>>> +fd=22
>>>>> +type=4
>>>>> +config=572
>>>>> +optional=1
>>>>> +
>>>>> +# PERF_TYPE_RAW / UOPS_RETIRED.RETIRE_SLOTS
>>>>> +[event23:base-stat]
>>>>> +fd=23
>>>>> +type=4
>>>>> +config=706
>>>>> +optional=1
>>>>> +
>>>>> +# PERF_TYPE_RAW / UOPS_ISSUED.ANY
>>>>> +[event24:base-stat]
>>>>> +fd=24
>>>>> +type=4
>>>>> +config=270
>>>>>  optional=1
>>>>>
>>>>>  # PERF_TYPE_HW_CACHE /
>>>>>  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
>>>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>>>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
>>>>> -[event20:base-stat]
>>>>> -fd=20
>>>>> +[event25:base-stat]
>>>>> +fd=25
>>>>>  type=3
>>>>>  config=0
>>>>>  optional=1
>>>>> @@ -181,8 +200,8 @@ optional=1
>>>>>  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
>>>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>>>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
>>>>> -[event21:base-stat]
>>>>> -fd=21
>>>>> +[event26:base-stat]
>>>>> +fd=26
>>>>>  type=3
>>>>>  config=65536
>>>>>  optional=1
>>>>> @@ -191,8 +210,8 @@ optional=1
>>>>>  #  PERF_COUNT_HW_CACHE_LL                 <<  0  |
>>>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>>>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
>>>>> -[event22:base-stat]
>>>>> -fd=22
>>>>> +[event27:base-stat]
>>>>> +fd=27
>>>>>  type=3
>>>>>  config=2
>>>>>  optional=1
>>>>> @@ -201,8 +220,8 @@ optional=1
>>>>>  #  PERF_COUNT_HW_CACHE_LL                 <<  0  |
>>>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>>>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
>>>>> -[event23:base-stat]
>>>>> -fd=23
>>>>> +[event28:base-stat]
>>>>> +fd=28
>>>>>  type=3
>>>>>  config=65538
>>>>>  optional=1
>>>>> @@ -211,8 +230,8 @@ optional=1
>>>>>  #  PERF_COUNT_HW_CACHE_L1I                <<  0  |
>>>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>>>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
>>>>> -[event24:base-stat]
>>>>> -fd=24
>>>>> +[event29:base-stat]
>>>>> +fd=29
>>>>>  type=3
>>>>>  config=1
>>>>>  optional=1
>>>>> @@ -221,8 +240,8 @@ optional=1
>>>>>  #  PERF_COUNT_HW_CACHE_L1I                <<  0  |
>>>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>>>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
>>>>> -[event25:base-stat]
>>>>> -fd=25
>>>>> +[event30:base-stat]
>>>>> +fd=30
>>>>>  type=3
>>>>>  config=65537
>>>>>  optional=1
>>>>> @@ -231,8 +250,8 @@ optional=1
>>>>>  #  PERF_COUNT_HW_CACHE_DTLB               <<  0  |
>>>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>>>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
>>>>> -[event26:base-stat]
>>>>> -fd=26
>>>>> +[event31:base-stat]
>>>>> +fd=31
>>>>>  type=3
>>>>>  config=3
>>>>>  optional=1
>>>>> @@ -241,8 +260,8 @@ optional=1
>>>>>  #  PERF_COUNT_HW_CACHE_DTLB               <<  0  |
>>>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>>>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
>>>>> -[event27:base-stat]
>>>>> -fd=27
>>>>> +[event32:base-stat]
>>>>> +fd=32
>>>>>  type=3
>>>>>  config=65539
>>>>>  optional=1
>>>>> @@ -251,8 +270,8 @@ optional=1
>>>>>  #  PERF_COUNT_HW_CACHE_ITLB               <<  0  |
>>>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>>>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
>>>>> -[event28:base-stat]
>>>>> -fd=28
>>>>> +[event33:base-stat]
>>>>> +fd=33
>>>>>  type=3
>>>>>  config=4
>>>>>  optional=1
>>>>> @@ -261,8 +280,8 @@ optional=1
>>>>>  #  PERF_COUNT_HW_CACHE_ITLB               <<  0  |
>>>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>>>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
>>>>> -[event29:base-stat]
>>>>> -fd=29
>>>>> +[event34:base-stat]
>>>>> +fd=34
>>>>>  type=3
>>>>>  config=65540
>>>>>  optional=1
>>>>> diff --git a/tools/perf/tests/attr/test-stat-detailed-3 b/tools/perf/tests/attr/test-stat-detailed-3
>>>>> index d555042e3fbf..e50535f45977 100644
>>>>> --- a/tools/perf/tests/attr/test-stat-detailed-3
>>>>> +++ b/tools/perf/tests/attr/test-stat-detailed-3
>>>>> @@ -90,89 +90,108 @@ enable_on_exec=0
>>>>>  read_format=15
>>>>>  optional=1
>>>>>
>>>>> -# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
>>>>> +# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
>>>>>  [event13:base-stat]
>>>>>  fd=13
>>>>>  group_fd=11
>>>>>  type=4
>>>>> -config=33024
>>>>> +config=33280
>>>>>  disabled=0
>>>>>  enable_on_exec=0
>>>>>  read_format=15
>>>>>  optional=1
>>>>>
>>>>> -# PERF_TYPE_RAW / topdown-fe-bound (0x8200)
>>>>> +# PERF_TYPE_RAW / topdown-be-bound (0x8300)
>>>>>  [event14:base-stat]
>>>>>  fd=14
>>>>>  group_fd=11
>>>>>  type=4
>>>>> -config=33280
>>>>> +config=33536
>>>>>  disabled=0
>>>>>  enable_on_exec=0
>>>>>  read_format=15
>>>>>  optional=1
>>>>>
>>>>> -# PERF_TYPE_RAW / topdown-be-bound (0x8300)
>>>>> +# PERF_TYPE_RAW / topdown-bad-spec (0x8100)
>>>>>  [event15:base-stat]
>>>>>  fd=15
>>>>>  group_fd=11
>>>>>  type=4
>>>>> -config=33536
>>>>> +config=33024
>>>>>  disabled=0
>>>>>  enable_on_exec=0
>>>>>  read_format=15
>>>>>  optional=1
>>>>>
>>>>> -# PERF_TYPE_RAW / topdown-heavy-ops (0x8400)
>>>>> +# PERF_TYPE_RAW / INT_MISC.UOP_DROPPING
>>>>>  [event16:base-stat]
>>>>>  fd=16
>>>>> -group_fd=11
>>>>>  type=4
>>>>> -config=33792
>>>>> -disabled=0
>>>>> -enable_on_exec=0
>>>>> -read_format=15
>>>>> +config=4109
>>>>>  optional=1
>>>>>
>>>>> -# PERF_TYPE_RAW / topdown-br-mispredict (0x8500)
>>>>> +# PERF_TYPE_RAW / cpu/INT_MISC.RECOVERY_CYCLES,cmask=1,edge/
>>>>>  [event17:base-stat]
>>>>>  fd=17
>>>>> -group_fd=11
>>>>>  type=4
>>>>> -config=34048
>>>>> -disabled=0
>>>>> -enable_on_exec=0
>>>>> -read_format=15
>>>>> +config=17039629
>>>>>  optional=1
>>>>>
>>>>> -# PERF_TYPE_RAW / topdown-fetch-lat (0x8600)
>>>>> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.THREAD
>>>>>  [event18:base-stat]
>>>>>  fd=18
>>>>> -group_fd=11
>>>>>  type=4
>>>>> -config=34304
>>>>> -disabled=0
>>>>> -enable_on_exec=0
>>>>> -read_format=15
>>>>> +config=60
>>>>>  optional=1
>>>>>
>>>>> -# PERF_TYPE_RAW / topdown-mem-bound (0x8700)
>>>>> +# PERF_TYPE_RAW / INT_MISC.RECOVERY_CYCLES_ANY
>>>>>  [event19:base-stat]
>>>>>  fd=19
>>>>> -group_fd=11
>>>>>  type=4
>>>>> -config=34560
>>>>> -disabled=0
>>>>> -enable_on_exec=0
>>>>> -read_format=15
>>>>> +config=2097421
>>>>> +optional=1
>>>>> +
>>>>> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.REF_XCLK
>>>>> +[event20:base-stat]
>>>>> +fd=20
>>>>> +type=4
>>>>> +config=316
>>>>> +optional=1
>>>>> +
>>>>> +# PERF_TYPE_RAW / IDQ_UOPS_NOT_DELIVERED.CORE
>>>>> +[event21:base-stat]
>>>>> +fd=21
>>>>> +type=4
>>>>> +config=412
>>>>> +optional=1
>>>>> +
>>>>> +# PERF_TYPE_RAW / CPU_CLK_UNHALTED.ONE_THREAD_ACTIVE
>>>>> +[event22:base-stat]
>>>>> +fd=22
>>>>> +type=4
>>>>> +config=572
>>>>> +optional=1
>>>>> +
>>>>> +# PERF_TYPE_RAW / UOPS_RETIRED.RETIRE_SLOTS
>>>>> +[event23:base-stat]
>>>>> +fd=23
>>>>> +type=4
>>>>> +config=706
>>>>> +optional=1
>>>>> +
>>>>> +# PERF_TYPE_RAW / UOPS_ISSUED.ANY
>>>>> +[event24:base-stat]
>>>>> +fd=24
>>>>> +type=4
>>>>> +config=270
>>>>>  optional=1
>>>>>
>>>>>  # PERF_TYPE_HW_CACHE /
>>>>>  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
>>>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>>>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
>>>>> -[event20:base-stat]
>>>>> -fd=20
>>>>> +[event25:base-stat]
>>>>> +fd=25
>>>>>  type=3
>>>>>  config=0
>>>>>  optional=1
>>>>> @@ -181,8 +200,8 @@ optional=1
>>>>>  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
>>>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>>>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
>>>>> -[event21:base-stat]
>>>>> -fd=21
>>>>> +[event26:base-stat]
>>>>> +fd=26
>>>>>  type=3
>>>>>  config=65536
>>>>>  optional=1
>>>>> @@ -191,8 +210,8 @@ optional=1
>>>>>  #  PERF_COUNT_HW_CACHE_LL                 <<  0  |
>>>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>>>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
>>>>> -[event22:base-stat]
>>>>> -fd=22
>>>>> +[event27:base-stat]
>>>>> +fd=27
>>>>>  type=3
>>>>>  config=2
>>>>>  optional=1
>>>>> @@ -201,8 +220,8 @@ optional=1
>>>>>  #  PERF_COUNT_HW_CACHE_LL                 <<  0  |
>>>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>>>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
>>>>> -[event23:base-stat]
>>>>> -fd=23
>>>>> +[event28:base-stat]
>>>>> +fd=28
>>>>>  type=3
>>>>>  config=65538
>>>>>  optional=1
>>>>> @@ -211,8 +230,8 @@ optional=1
>>>>>  #  PERF_COUNT_HW_CACHE_L1I                <<  0  |
>>>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>>>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
>>>>> -[event24:base-stat]
>>>>> -fd=24
>>>>> +[event29:base-stat]
>>>>> +fd=29
>>>>>  type=3
>>>>>  config=1
>>>>>  optional=1
>>>>> @@ -221,8 +240,8 @@ optional=1
>>>>>  #  PERF_COUNT_HW_CACHE_L1I                <<  0  |
>>>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>>>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
>>>>> -[event25:base-stat]
>>>>> -fd=25
>>>>> +[event30:base-stat]
>>>>> +fd=30
>>>>>  type=3
>>>>>  config=65537
>>>>>  optional=1
>>>>> @@ -231,8 +250,8 @@ optional=1
>>>>>  #  PERF_COUNT_HW_CACHE_DTLB               <<  0  |
>>>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>>>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
>>>>> -[event26:base-stat]
>>>>> -fd=26
>>>>> +[event31:base-stat]
>>>>> +fd=31
>>>>>  type=3
>>>>>  config=3
>>>>>  optional=1
>>>>> @@ -241,8 +260,8 @@ optional=1
>>>>>  #  PERF_COUNT_HW_CACHE_DTLB               <<  0  |
>>>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>>>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
>>>>> -[event27:base-stat]
>>>>> -fd=27
>>>>> +[event32:base-stat]
>>>>> +fd=32
>>>>>  type=3
>>>>>  config=65539
>>>>>  optional=1
>>>>> @@ -251,8 +270,8 @@ optional=1
>>>>>  #  PERF_COUNT_HW_CACHE_ITLB               <<  0  |
>>>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>>>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
>>>>> -[event28:base-stat]
>>>>> -fd=28
>>>>> +[event33:base-stat]
>>>>> +fd=33
>>>>>  type=3
>>>>>  config=4
>>>>>  optional=1
>>>>> @@ -261,8 +280,8 @@ optional=1
>>>>>  #  PERF_COUNT_HW_CACHE_ITLB               <<  0  |
>>>>>  # (PERF_COUNT_HW_CACHE_OP_READ            <<  8) |
>>>>>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
>>>>> -[event29:base-stat]
>>>>> -fd=29
>>>>> +[event34:base-stat]
>>>>> +fd=34
>>>>>  type=3
>>>>>  config=65540
>>>>>  optional=1
>>>>> @@ -271,8 +290,8 @@ optional=1
>>>>>  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
>>>>>  # (PERF_COUNT_HW_CACHE_OP_PREFETCH        <<  8) |
>>>>>  # (PERF_COUNT_HW_CACHE_RESULT_ACCESS      << 16)
>>>>> -[event30:base-stat]
>>>>> -fd=30
>>>>> +[event35:base-stat]
>>>>> +fd=35
>>>>>  type=3
>>>>>  config=512
>>>>>  optional=1
>>>>> @@ -281,8 +300,8 @@ optional=1
>>>>>  #  PERF_COUNT_HW_CACHE_L1D                <<  0  |
>>>>>  # (PERF_COUNT_HW_CACHE_OP_PREFETCH        <<  8) |
>>>>>  # (PERF_COUNT_HW_CACHE_RESULT_MISS        << 16)
>>>>> -[event31:base-stat]
>>>>> -fd=31
>>>>> +[event36:base-stat]
>>>>> +fd=36
>>>>>  type=3
>>>>>  config=66048
>>>>>  optional=1

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH v1 1/2] perf test attr: Update no event/metric expectations
  2023-05-18 12:55     ` Liang, Kan
@ 2023-05-18 17:45       ` Liang, Kan
  2023-05-18 17:59         ` Arnaldo Carvalho de Melo
  2023-05-19 13:37         ` Arnaldo Carvalho de Melo
  0 siblings, 2 replies; 14+ messages in thread
From: Liang, Kan @ 2023-05-18 17:45 UTC (permalink / raw)
  To: Arnaldo Carvalho de Melo, James Clark, Ian Rogers
  Cc: Peter Zijlstra, Ingo Molnar, Mark Rutland, Alexander Shishkin,
	Jiri Olsa, Namhyung Kim, Adrian Hunter, Thomas Richter,
	linux-perf-users, linux-kernel

Hi Arnaldo,

On 2023-05-18 8:55 a.m., Liang, Kan wrote:
> On 2023-05-18 8:20 a.m., Arnaldo Carvalho de Melo wrote:
>> Em Thu, May 18, 2023 at 08:50:14AM +0100, James Clark escreveu:
>>>
>>> On 17/05/2023 23:57, Ian Rogers wrote:
>>>> Previously hard coded events/metrics were used, update for the use of
>>>> the TopdownL1 json metric group.
>>>>
>>>> Fixes: 94b1a603fca7 ("perf stat: Add TopdownL1 metric as a default if present")
>>>> Signed-off-by: Ian Rogers <irogers@google.com>
>>>> ---
>>>>  tools/perf/tests/attr/base-stat            |   2 +-
>>>>  tools/perf/tests/attr/test-stat-default    |  80 ++++++++-----
>>>>  tools/perf/tests/attr/test-stat-detailed-1 |  95 +++++++++------
>>>>  tools/perf/tests/attr/test-stat-detailed-2 | 119 +++++++++++--------
>>>>  tools/perf/tests/attr/test-stat-detailed-3 | 127 ++++++++++++---------
>>>>  5 files changed, 249 insertions(+), 174 deletions(-)
>>>>
>>> Reviewed-by: James Clark <james.clark@arm.com>
>> Thanks, applied both patches to perf-tools.
>>
> Could you please hold patch 1 for a while?

Sorry for the noise.

Ian has addressed my concerns. The patch looks good to me now.
It also fixes a "Failed" on my Cascade Lake machine.

Tested-by: Kan Liang <kan.liang@linux.intel.com>

But for long term, we probably need a better solution to avoid keeping
adding such non-architectural events in the test case.

Thanks,
Kan

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH v1 1/2] perf test attr: Update no event/metric expectations
  2023-05-18 17:45       ` Liang, Kan
@ 2023-05-18 17:59         ` Arnaldo Carvalho de Melo
  2023-05-19 13:37         ` Arnaldo Carvalho de Melo
  1 sibling, 0 replies; 14+ messages in thread
From: Arnaldo Carvalho de Melo @ 2023-05-18 17:59 UTC (permalink / raw)
  To: Liang, Kan, Arnaldo Carvalho de Melo, James Clark, Ian Rogers
  Cc: Peter Zijlstra, Ingo Molnar, Mark Rutland, Alexander Shishkin,
	Jiri Olsa, Namhyung Kim, Adrian Hunter, Thomas Richter,
	linux-perf-users, linux-kernel



On May 18, 2023 2:45:06 PM GMT-03:00, "Liang, Kan" <kan.liang@linux.intel.com> wrote:
>Hi Arnaldo,
>
>On 2023-05-18 8:55 a.m., Liang, Kan wrote:
>> On 2023-05-18 8:20 a.m., Arnaldo Carvalho de Melo wrote:
>>> Em Thu, May 18, 2023 at 08:50:14AM +0100, James Clark escreveu:
>>>>
>>>> On 17/05/2023 23:57, Ian Rogers wrote:
>>>>> Previously hard coded events/metrics were used, update for the use of
>>>>> the TopdownL1 json metric group.
>>>>>
>>>>> Fixes: 94b1a603fca7 ("perf stat: Add TopdownL1 metric as a default if present")
>>>>> Signed-off-by: Ian Rogers <irogers@google.com>
>>>>> ---
>>>>>  tools/perf/tests/attr/base-stat            |   2 +-
>>>>>  tools/perf/tests/attr/test-stat-default    |  80 ++++++++-----
>>>>>  tools/perf/tests/attr/test-stat-detailed-1 |  95 +++++++++------
>>>>>  tools/perf/tests/attr/test-stat-detailed-2 | 119 +++++++++++--------
>>>>>  tools/perf/tests/attr/test-stat-detailed-3 | 127 ++++++++++++---------
>>>>>  5 files changed, 249 insertions(+), 174 deletions(-)
>>>>>
>>>> Reviewed-by: James Clark <james.clark@arm.com>
>>> Thanks, applied both patches to perf-tools.
>>>
>> Could you please hold patch 1 for a while?
>
>Sorry for the noise.

That's not noise, I value your reviews, please keep doing them.

>Ian has addressed my concerns. The patch looks good to me now.
>It also fixes a "Failed" on my Cascade Lake machine.
>
>Tested-by: Kan Liang <kan.liang@linux.intel.com>

Thanks !

>But for long term, we probably need a better solution to avoid keeping
>adding such non-architectural events in the test case.

Yes, the situation now is different than the one when this test was put in place by Jiri (IIRC).

- Arnaldo

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH v1 1/2] perf test attr: Update no event/metric expectations
  2023-05-18 17:45       ` Liang, Kan
  2023-05-18 17:59         ` Arnaldo Carvalho de Melo
@ 2023-05-19 13:37         ` Arnaldo Carvalho de Melo
  1 sibling, 0 replies; 14+ messages in thread
From: Arnaldo Carvalho de Melo @ 2023-05-19 13:37 UTC (permalink / raw)
  To: Liang, Kan
  Cc: James Clark, Ian Rogers, Peter Zijlstra, Ingo Molnar,
	Mark Rutland, Alexander Shishkin, Jiri Olsa, Namhyung Kim,
	Adrian Hunter, Thomas Richter, linux-perf-users, linux-kernel

Em Thu, May 18, 2023 at 01:45:06PM -0400, Liang, Kan escreveu:
> Hi Arnaldo,
> 
> On 2023-05-18 8:55 a.m., Liang, Kan wrote:
> > On 2023-05-18 8:20 a.m., Arnaldo Carvalho de Melo wrote:
> >> Em Thu, May 18, 2023 at 08:50:14AM +0100, James Clark escreveu:
> >>>
> >>> On 17/05/2023 23:57, Ian Rogers wrote:
> >>>> Previously hard coded events/metrics were used, update for the use of
> >>>> the TopdownL1 json metric group.
> >>>>
> >>>> Fixes: 94b1a603fca7 ("perf stat: Add TopdownL1 metric as a default if present")
> >>>> Signed-off-by: Ian Rogers <irogers@google.com>
> >>>> ---
> >>>>  tools/perf/tests/attr/base-stat            |   2 +-
> >>>>  tools/perf/tests/attr/test-stat-default    |  80 ++++++++-----
> >>>>  tools/perf/tests/attr/test-stat-detailed-1 |  95 +++++++++------
> >>>>  tools/perf/tests/attr/test-stat-detailed-2 | 119 +++++++++++--------
> >>>>  tools/perf/tests/attr/test-stat-detailed-3 | 127 ++++++++++++---------
> >>>>  5 files changed, 249 insertions(+), 174 deletions(-)
> >>>>
> >>> Reviewed-by: James Clark <james.clark@arm.com>
> >> Thanks, applied both patches to perf-tools.
> >>
> > Could you please hold patch 1 for a while?
> 
> Sorry for the noise.
> 
> Ian has addressed my concerns. The patch looks good to me now.
> It also fixes a "Failed" on my Cascade Lake machine.
> 
> Tested-by: Kan Liang <kan.liang@linux.intel.com>

Thanks, added it,

- Arnaldo
 
> But for long term, we probably need a better solution to avoid keeping
> adding such non-architectural events in the test case.

^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2023-05-19 13:37 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-05-17 22:57 [PATCH v1 1/2] perf test attr: Update no event/metric expectations Ian Rogers
2023-05-17 22:57 ` [PATCH v1 2/2] perf test attr: Fix deprecation warning Ian Rogers
2023-05-18  7:23   ` James Clark
2023-05-18  7:50 ` [PATCH v1 1/2] perf test attr: Update no event/metric expectations James Clark
2023-05-18 12:20   ` Arnaldo Carvalho de Melo
2023-05-18 12:55     ` Liang, Kan
2023-05-18 17:45       ` Liang, Kan
2023-05-18 17:59         ` Arnaldo Carvalho de Melo
2023-05-19 13:37         ` Arnaldo Carvalho de Melo
2023-05-18 13:01 ` Liang, Kan
2023-05-18 14:10   ` Ian Rogers
2023-05-18 14:40     ` Liang, Kan
2023-05-18 16:36       ` Ian Rogers
2023-05-18 17:36         ` Liang, Kan

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).