The Linux Kernel Mailing List
 help / color / mirror / Atom feed
* [PATCH v2 1/2] perf vendor events amd: Update Zen 5 core events
@ 2026-06-23  5:28 Sandipan Das
  2026-06-23  5:28 ` [PATCH v2 2/2] perf vendor events amd: Update Zen 6 " Sandipan Das
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Sandipan Das @ 2026-06-23  5:28 UTC (permalink / raw)
  To: linux-perf-users, linux-kernel
  Cc: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo,
	Namhyung Kim, Mark Rutland, Alexander Shishkin, Jiri Olsa,
	Ian Rogers, Adrian Hunter, James Clark, x86, H . Peter Anvin,
	Ravi Bangoria, Ananth Narayan, Sandipan Das

Update definitions for the following events.
  * PMCx00A - Add missing unit masks
  * PMCx00B - Add missing unit masks and fix descriptions
  * PMCx00C - Add missing unit masks
  * PMCx00D - Add missing unit masks
  * PMCx025 - Add missing unit masks and fix descriptions

Fixes: 45c072f2537a ("perf vendor events amd: Add Zen 5 core events")
Signed-off-by: Sandipan Das <sandipan.das@amd.com>
---

Previous versions can be found at:
v1: https://lore.kernel.org/all/f16d1391366762dee0d49f00697f5e6ea913e2c1.1780330378.git.sandipan.das@amd.com/

Changes in v2:
  * Fix event description pointed out by sashiko.

---
 .../arch/x86/amdzen5/floating-point.json      | 130 +++++++++++++++---
 .../arch/x86/amdzen5/load-store.json          |   8 +-
 2 files changed, 120 insertions(+), 18 deletions(-)

diff --git a/tools/perf/pmu-events/arch/x86/amdzen5/floating-point.json b/tools/perf/pmu-events/arch/x86/amdzen5/floating-point.json
index 9204bfb1d69e..569975b53cc3 100644
--- a/tools/perf/pmu-events/arch/x86/amdzen5/floating-point.json
+++ b/tools/perf/pmu-events/arch/x86/amdzen5/floating-point.json
@@ -179,6 +179,30 @@
     "BriefDescription": "Retired scalar floating-point blend ops.",
     "UMask": "0x09"
   },
+  {
+    "EventName": "fp_ops_retired_by_type.scalar_mov",
+    "EventCode": "0x0a",
+    "BriefDescription": "Retired scalar floating-point MOV ops.",
+    "UMask": "0x0a"
+  },
+  {
+    "EventName": "fp_ops_retired_by_type.scalar_shuffle",
+    "EventCode": "0x0a",
+    "BriefDescription": "Retired scalar floating-point shuffle ops (may include instructions not necessarily thought of as including shuffles e.g. horizontal add, dot product, and certain MOV instructions).",
+    "UMask": "0x0b"
+  },
+  {
+    "EventName": "fp_ops_retired_by_type.scalar_bfloat",
+    "EventCode": "0x0a",
+    "BriefDescription": "Retired scalar floating-point bfloat ops.",
+    "UMask": "0x0c"
+  },
+  {
+    "EventName": "fp_ops_retired_by_type.scalar_logical",
+    "EventCode": "0x0a",
+    "BriefDescription": "Retired scalar floating-point logical ops.",
+    "UMask": "0x0d"
+  },
   {
     "EventName": "fp_ops_retired_by_type.scalar_other",
     "EventCode": "0x0a",
@@ -245,12 +269,24 @@
     "BriefDescription": "Retired vector floating-point blend ops.",
     "UMask": "0x90"
   },
+  {
+    "EventName": "fp_ops_retired_by_type.vector_mov",
+    "EventCode": "0x0a",
+    "BriefDescription": "Retired vector floating-point MOV ops.",
+    "UMask": "0xa0"
+  },
   {
     "EventName": "fp_ops_retired_by_type.vector_shuffle",
     "EventCode": "0x0a",
     "BriefDescription": "Retired vector floating-point shuffle ops (may include instructions not necessarily thought of as including shuffles e.g. horizontal add, dot product, and certain MOV instructions).",
     "UMask": "0xb0"
   },
+  {
+    "EventName": "fp_ops_retired_by_type.vector_bfloat",
+    "EventCode": "0x0a",
+    "BriefDescription": "Retired vector floating-point bfloat ops.",
+    "UMask": "0xc0"
+  },
   {
     "EventName": "fp_ops_retired_by_type.vector_logical",
     "EventCode": "0x0a",
@@ -278,7 +314,7 @@
   {
     "EventName": "sse_avx_ops_retired.mmx_add",
     "EventCode": "0x0b",
-    "BriefDescription": "Retired MMX integer add.",
+    "BriefDescription": "Retired MMX integer add ops.",
     "UMask": "0x01"
   },
   {
@@ -299,16 +335,34 @@
     "BriefDescription": "Retired MMX integer multiply-accumulate ops.",
     "UMask": "0x04"
   },
+  {
+    "EventName": "sse_avx_ops_retired.mmx_aes",
+    "EventCode": "0x0b",
+    "BriefDescription": "Retired MMX integer AES ops.",
+    "UMask": "0x05"
+  },
+  {
+    "EventName": "sse_avx_ops_retired.mmx_sha",
+    "EventCode": "0x0b",
+    "BriefDescription": "Retired MMX integer SHA ops.",
+    "UMask": "0x06"
+  },
   {
     "EventName": "sse_avx_ops_retired.mmx_cmp",
     "EventCode": "0x0b",
     "BriefDescription": "Retired MMX integer compare ops.",
     "UMask": "0x07"
   },
+  {
+    "EventName": "sse_avx_ops_retired.mmx_cvt",
+    "EventCode": "0x0b",
+    "BriefDescription": "Retired MMX integer convert or pack ops.",
+    "UMask": "0x08"
+  },
   {
     "EventName": "sse_avx_ops_retired.mmx_shift",
     "EventCode": "0x0b",
-    "BriefDescription": "Retired MMX integer shift ops.",
+    "BriefDescription": "Retired MMX integer shift or rotate ops.",
     "UMask": "0x09"
   },
   {
@@ -324,9 +378,9 @@
     "UMask": "0x0b"
   },
   {
-    "EventName": "sse_avx_ops_retired.mmx_pack",
+    "EventName": "sse_avx_ops_retired.mmx_vnni",
     "EventCode": "0x0b",
-    "BriefDescription": "Retired MMX integer pack ops.",
+    "BriefDescription": "Retired MMX integer VNNI ops.",
     "UMask": "0x0c"
   },
   {
@@ -390,15 +444,15 @@
     "UMask": "0x70"
   },
   {
-    "EventName": "sse_avx_ops_retired.sse_avx_clm",
+    "EventName": "sse_avx_ops_retired.sse_avx_cvt",
     "EventCode": "0x0b",
-    "BriefDescription": "Retired SSE and AVX integer CLM ops.",
+    "BriefDescription": "Retired SSE and AVX integer convert or pack ops.",
     "UMask": "0x80"
   },
   {
     "EventName": "sse_avx_ops_retired.sse_avx_shift",
     "EventCode": "0x0b",
-    "BriefDescription": "Retired SSE and AVX integer shift ops.",
+    "BriefDescription": "Retired SSE and AVX integer shift or rotate ops.",
     "UMask": "0x90"
   },
   {
@@ -414,9 +468,9 @@
     "UMask": "0xb0"
   },
   {
-    "EventName": "sse_avx_ops_retired.sse_avx_pack",
+    "EventName": "sse_avx_ops_retired.sse_avx_vnni",
     "EventCode": "0x0b",
-    "BriefDescription": "Retired SSE and AVX integer pack ops.",
+    "BriefDescription": "Retired SSE and AVX integer VNNI ops.",
     "UMask": "0xc0"
   },
   {
@@ -497,12 +551,24 @@
     "BriefDescription": "Retired 128-bit packed floating-point blend ops.",
     "UMask": "0x09"
   },
+  {
+    "EventName": "fp_pack_ops_retired.fp128_mov",
+    "EventCode": "0x0c",
+    "BriefDescription": "Retired 128-bit packed floating-point MOV ops.",
+    "UMask": "0x0a"
+  },
   {
     "EventName": "fp_pack_ops_retired.fp128_shuffle",
     "EventCode": "0x0c",
     "BriefDescription": "Retired 128-bit packed floating-point shuffle ops (may include instructions not necessarily thought of as including shuffles e.g. horizontal add, dot product, and certain MOV instructions).",
     "UMask": "0x0b"
   },
+  {
+    "EventName": "fp_pack_ops_retired.fp128_bfloat",
+    "EventCode": "0x0c",
+    "BriefDescription": "Retired 128-bit packed floating-point bfloat ops.",
+    "UMask": "0x0c"
+  },
   {
     "EventName": "fp_pack_ops_retired.fp128_logical",
     "EventCode": "0x0c",
@@ -575,12 +641,24 @@
     "BriefDescription": "Retired 256-bit packed floating-point blend ops.",
     "UMask": "0x90"
   },
+  {
+    "EventName": "fp_pack_ops_retired.fp256_mov",
+    "EventCode": "0x0c",
+    "BriefDescription": "Retired 256-bit packed floating-point MOV ops.",
+    "UMask": "0xa0"
+  },
   {
     "EventName": "fp_pack_ops_retired.fp256_shuffle",
     "EventCode": "0x0c",
     "BriefDescription": "Retired 256-bit packed floating-point shuffle ops (may include instructions not necessarily thought of as including shuffles e.g. horizontal add, dot product, and certain MOV instructions).",
     "UMask": "0xb0"
   },
+  {
+    "EventName": "fp_pack_ops_retired.fp256_bfloat",
+    "EventCode": "0x0c",
+    "BriefDescription": "Retired 256-bit packed floating-point bfloat ops.",
+    "UMask": "0xc0"
+  },
   {
     "EventName": "fp_pack_ops_retired.fp256_logical",
     "EventCode": "0x0c",
@@ -648,15 +726,15 @@
     "UMask": "0x07"
   },
   {
-    "EventName": "packed_int_op_type.int128_clm",
+    "EventName": "packed_int_op_type.int128_cvt",
     "EventCode": "0x0d",
-    "BriefDescription": "Retired 128-bit packed integer CLM ops.",
+    "BriefDescription": "Retired 128-bit packed integer convert or pack ops.",
     "UMask": "0x08"
   },
   {
     "EventName": "packed_int_op_type.int128_shift",
     "EventCode": "0x0d",
-    "BriefDescription": "Retired 128-bit packed integer shift ops.",
+    "BriefDescription": "Retired 128-bit packed integer shift or rotate ops.",
     "UMask": "0x09"
   },
   {
@@ -672,9 +750,9 @@
     "UMask": "0x0b"
   },
   {
-    "EventName": "packed_int_op_type.int128_pack",
+    "EventName": "packed_int_op_type.int128_vnni",
     "EventCode": "0x0d",
-    "BriefDescription": "Retired 128-bit packed integer pack ops.",
+    "BriefDescription": "Retired 128-bit packed integer VNNI ops.",
     "UMask": "0x0c"
   },
   {
@@ -719,16 +797,34 @@
     "BriefDescription": "Retired 256-bit packed integer multiply-accumulate ops.",
     "UMask": "0x40"
   },
+  {
+    "EventName": "packed_int_op_type.int256_aes",
+    "EventCode": "0x0d",
+    "BriefDescription": "Retired 256-bit packed integer AES ops.",
+    "UMask": "0x50"
+  },
+  {
+    "EventName": "packed_int_op_type.int256_sha",
+    "EventCode": "0x0d",
+    "BriefDescription": "Retired 256-bit packed integer SHA ops.",
+    "UMask": "0x60"
+  },
   {
     "EventName": "packed_int_op_type.int256_cmp",
     "EventCode": "0x0d",
     "BriefDescription": "Retired 256-bit packed integer compare ops.",
     "UMask": "0x70"
   },
+  {
+    "EventName": "packed_int_op_type.int256_cvt",
+    "EventCode": "0x0d",
+    "BriefDescription": "Retired 256-bit packed integer convert or pack ops.",
+    "UMask": "0x80"
+  },
   {
     "EventName": "packed_int_op_type.int256_shift",
     "EventCode": "0x0d",
-    "BriefDescription": "Retired 256-bit packed integer shift ops.",
+    "BriefDescription": "Retired 256-bit packed integer shift or rotate ops.",
     "UMask": "0x90"
   },
   {
@@ -744,9 +840,9 @@
     "UMask": "0xb0"
   },
   {
-    "EventName": "packed_int_op_type.int256_pack",
+    "EventName": "packed_int_op_type.int256_vnni",
     "EventCode": "0x0d",
-    "BriefDescription": "Retired 256-bit packed integer pack ops.",
+    "BriefDescription": "Retired 256-bit packed integer VNNI ops.",
     "UMask": "0xc0"
   },
   {
diff --git a/tools/perf/pmu-events/arch/x86/amdzen5/load-store.json b/tools/perf/pmu-events/arch/x86/amdzen5/load-store.json
index 06bbaea15925..b1994539ece8 100644
--- a/tools/perf/pmu-events/arch/x86/amdzen5/load-store.json
+++ b/tools/perf/pmu-events/arch/x86/amdzen5/load-store.json
@@ -8,9 +8,15 @@
   {
     "EventName": "ls_locks.bus_lock",
     "EventCode": "0x25",
-    "BriefDescription": "Retired Lock instructions which caused a bus lock.",
+    "BriefDescription": "Retired lock instructions which caused a bus lock.",
     "UMask": "0x01"
   },
+  {
+    "EventName": "ls_locks.all",
+    "EventCode": "0x25",
+    "BriefDescription": "Retired lock instructions of all types.",
+    "UMask": "0x1f"
+  },
   {
     "EventName": "ls_ret_cl_flush",
     "EventCode": "0x26",
-- 
2.53.0


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

* [PATCH v2 2/2] perf vendor events amd: Update Zen 6 core events
  2026-06-23  5:28 [PATCH v2 1/2] perf vendor events amd: Update Zen 5 core events Sandipan Das
@ 2026-06-23  5:28 ` Sandipan Das
  2026-07-06 16:58 ` [PATCH v2 1/2] perf vendor events amd: Update Zen 5 " Namhyung Kim
  2026-07-06 17:14 ` Ian Rogers
  2 siblings, 0 replies; 6+ messages in thread
From: Sandipan Das @ 2026-06-23  5:28 UTC (permalink / raw)
  To: linux-perf-users, linux-kernel
  Cc: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo,
	Namhyung Kim, Mark Rutland, Alexander Shishkin, Jiri Olsa,
	Ian Rogers, Adrian Hunter, James Clark, x86, H . Peter Anvin,
	Ravi Bangoria, Ananth Narayan, Sandipan Das

Update definitions for the following events.
  * PMCx00A - Fix descriptions
  * PMCx00C - Add missing unit masks
  * PMCx00D - Add missing unit masks and fix descriptions
  * PMCx013 - Fix incorrect unit masks

Fixes: 2f42fb0661d9 ("perf vendor events amd: Add Zen 6 core events")
Signed-off-by: Sandipan Das <sandipan.das@amd.com>
---

Previous versions can be found at:
v1: https://lore.kernel.org/all/3bcbc34343711b581e0567070dc382510907bbc9.1780330378.git.sandipan.das@amd.com/

---
 .../arch/x86/amdzen6/floating-point.json      | 34 ++++++++++++++++---
 1 file changed, 29 insertions(+), 5 deletions(-)

diff --git a/tools/perf/pmu-events/arch/x86/amdzen6/floating-point.json b/tools/perf/pmu-events/arch/x86/amdzen6/floating-point.json
index 03cb039434de..71b883776f37 100644
--- a/tools/perf/pmu-events/arch/x86/amdzen6/floating-point.json
+++ b/tools/perf/pmu-events/arch/x86/amdzen6/floating-point.json
@@ -212,7 +212,7 @@
   {
     "EventName": "fp_ops_ret_by_type.scalar_logical",
     "EventCode": "0x0a",
-    "BriefDescription": "Retired scalar floating-point move uops.",
+    "BriefDescription": "Retired scalar floating-point logical uops.",
     "UMask": "0x0d"
   },
   {
@@ -665,6 +665,12 @@
     "BriefDescription": "Retired 256-bit packed floating-point shuffle uops (may include instructions not necessarily thought of as including shuffles e.g. horizontal add, dot product, and certain MOV instructions).",
     "UMask": "0xb0"
   },
+  {
+    "EventName": "fp_pack_ops_ret.fp256_bfloat",
+    "EventCode": "0x0c",
+    "BriefDescription": "Retired 256-bit packed floating-point bfloat uops.",
+    "UMask": "0xc0"
+  },
   {
     "EventName": "fp_pack_ops_ret.fp256_logical",
     "EventCode": "0x0c",
@@ -758,7 +764,7 @@
   {
     "EventName": "fp_pack_int_ops_ret.int128_vnni",
     "EventCode": "0x0d",
-    "BriefDescription": "Retired 128-bit packed integer VNNI ops.",
+    "BriefDescription": "Retired 128-bit packed integer VNNI uops.",
     "UMask": "0x0c"
   },
   {
@@ -803,12 +809,30 @@
     "BriefDescription": "Retired 256-bit packed integer multiply-accumulate uops.",
     "UMask": "0x40"
   },
+  {
+    "EventName": "fp_pack_int_ops_ret.int256_aes",
+    "EventCode": "0x0d",
+    "BriefDescription": "Retired 256-bit packed integer AES uops.",
+    "UMask": "0x50"
+  },
+  {
+    "EventName": "fp_pack_int_ops_ret.int256_sha",
+    "EventCode": "0x0d",
+    "BriefDescription": "Retired 256-bit packed integer SHA uops.",
+    "UMask": "0x60"
+  },
   {
     "EventName": "fp_pack_int_ops_ret.int256_cmp",
     "EventCode": "0x0d",
     "BriefDescription": "Retired 256-bit packed integer compare uops.",
     "UMask": "0x70"
   },
+  {
+    "EventName": "fp_pack_int_ops_ret.int256_cvt",
+    "EventCode": "0x0d",
+    "BriefDescription": "Retired 256-bit packed integer convert or pack uops.",
+    "UMask": "0x80"
+  },
   {
     "EventName": "fp_pack_int_ops_ret.int256_shift",
     "EventCode": "0x0d",
@@ -1083,19 +1107,19 @@
     "EventName": "fp_nsq_read_stalls.fp_prf",
     "EventCode": "0x13",
     "BriefDescription": "Cycles when reads of the NSQ and writes to the floating-point or SIMD schedulers are stalled due to insufficient free physical register file (FP-PRF) entries.",
-    "UMask": "0x0e"
+    "UMask": "0x02"
   },
   {
     "EventName": "fp_nsq_read_stalls.k_prf",
     "EventCode": "0x13",
     "BriefDescription": "Cycles when reads of the NSQ and writes to the floating-point or SIMD schedulers are stalled due to insufficient free mask physical register file (K-PRF) entries.",
-    "UMask": "0x0e"
+    "UMask": "0x04"
   },
   {
     "EventName": "fp_nsq_read_stalls.fp_sq",
     "EventCode": "0x13",
     "BriefDescription": "Cycles when reads of the NSQ and writes to the floating-point or SIMD schedulers are stalled due to insufficient free scheduler entries.",
-    "UMask": "0x0e"
+    "UMask": "0x08"
   },
   {
     "EventName": "fp_nsq_read_stalls.all",
-- 
2.53.0


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

* Re: [PATCH v2 1/2] perf vendor events amd: Update Zen 5 core events
  2026-06-23  5:28 [PATCH v2 1/2] perf vendor events amd: Update Zen 5 core events Sandipan Das
  2026-06-23  5:28 ` [PATCH v2 2/2] perf vendor events amd: Update Zen 6 " Sandipan Das
@ 2026-07-06 16:58 ` Namhyung Kim
  2026-07-06 17:14 ` Ian Rogers
  2 siblings, 0 replies; 6+ messages in thread
From: Namhyung Kim @ 2026-07-06 16:58 UTC (permalink / raw)
  To: linux-perf-users, linux-kernel, Sandipan Das
  Cc: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo,
	Mark Rutland, Alexander Shishkin, Jiri Olsa, Ian Rogers,
	Adrian Hunter, James Clark, x86, H . Peter Anvin, Ravi Bangoria,
	Ananth Narayan

On Tue, 23 Jun 2026 10:58:31 +0530, Sandipan Das wrote:
> Update definitions for the following events.
>   * PMCx00A - Add missing unit masks
>   * PMCx00B - Add missing unit masks and fix descriptions
>   * PMCx00C - Add missing unit masks
>   * PMCx00D - Add missing unit masks
>   * PMCx025 - Add missing unit masks and fix descriptions
> 
> [...]
Applied to perf-tools-next, thanks!

Best regards,
Namhyung



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

* Re: [PATCH v2 1/2] perf vendor events amd: Update Zen 5 core events
  2026-06-23  5:28 [PATCH v2 1/2] perf vendor events amd: Update Zen 5 core events Sandipan Das
  2026-06-23  5:28 ` [PATCH v2 2/2] perf vendor events amd: Update Zen 6 " Sandipan Das
  2026-07-06 16:58 ` [PATCH v2 1/2] perf vendor events amd: Update Zen 5 " Namhyung Kim
@ 2026-07-06 17:14 ` Ian Rogers
  2026-07-06 17:21   ` Sandipan Das
  2 siblings, 1 reply; 6+ messages in thread
From: Ian Rogers @ 2026-07-06 17:14 UTC (permalink / raw)
  To: Sandipan Das
  Cc: linux-perf-users, linux-kernel, Peter Zijlstra, Ingo Molnar,
	Arnaldo Carvalho de Melo, Namhyung Kim, Mark Rutland,
	Alexander Shishkin, Jiri Olsa, Adrian Hunter, James Clark, x86,
	H . Peter Anvin, Ravi Bangoria, Ananth Narayan

On Mon, Jun 22, 2026 at 10:28 PM Sandipan Das <sandipan.das@amd.com> wrote:
>
> Update definitions for the following events.
>   * PMCx00A - Add missing unit masks
>   * PMCx00B - Add missing unit masks and fix descriptions
>   * PMCx00C - Add missing unit masks
>   * PMCx00D - Add missing unit masks
>   * PMCx025 - Add missing unit masks and fix descriptions
>
> Fixes: 45c072f2537a ("perf vendor events amd: Add Zen 5 core events")
> Signed-off-by: Sandipan Das <sandipan.das@amd.com>
> ---
>
> Previous versions can be found at:
> v1: https://lore.kernel.org/all/f16d1391366762dee0d49f00697f5e6ea913e2c1.1780330378.git.sandipan.das@amd.com/
>
> Changes in v2:
>   * Fix event description pointed out by sashiko.
>
> ---
>  .../arch/x86/amdzen5/floating-point.json      | 130 +++++++++++++++---
>  .../arch/x86/amdzen5/load-store.json          |   8 +-
>  2 files changed, 120 insertions(+), 18 deletions(-)
>
> diff --git a/tools/perf/pmu-events/arch/x86/amdzen5/floating-point.json b/tools/perf/pmu-events/arch/x86/amdzen5/floating-point.json
> index 9204bfb1d69e..569975b53cc3 100644
> --- a/tools/perf/pmu-events/arch/x86/amdzen5/floating-point.json
> +++ b/tools/perf/pmu-events/arch/x86/amdzen5/floating-point.json
> @@ -179,6 +179,30 @@
>      "BriefDescription": "Retired scalar floating-point blend ops.",
>      "UMask": "0x09"
>    },
> +  {
> +    "EventName": "fp_ops_retired_by_type.scalar_mov",
> +    "EventCode": "0x0a",
> +    "BriefDescription": "Retired scalar floating-point MOV ops.",
> +    "UMask": "0x0a"
> +  },
> +  {
> +    "EventName": "fp_ops_retired_by_type.scalar_shuffle",
> +    "EventCode": "0x0a",
> +    "BriefDescription": "Retired scalar floating-point shuffle ops (may include instructions not necessarily thought of as including shuffles e.g. horizontal add, dot product, and certain MOV instructions).",
> +    "UMask": "0x0b"
> +  },
> +  {
> +    "EventName": "fp_ops_retired_by_type.scalar_bfloat",
> +    "EventCode": "0x0a",
> +    "BriefDescription": "Retired scalar floating-point bfloat ops.",
> +    "UMask": "0x0c"
> +  },
> +  {
> +    "EventName": "fp_ops_retired_by_type.scalar_logical",
> +    "EventCode": "0x0a",
> +    "BriefDescription": "Retired scalar floating-point logical ops.",
> +    "UMask": "0x0d"
> +  },
>    {
>      "EventName": "fp_ops_retired_by_type.scalar_other",
>      "EventCode": "0x0a",
> @@ -245,12 +269,24 @@
>      "BriefDescription": "Retired vector floating-point blend ops.",
>      "UMask": "0x90"
>    },
> +  {
> +    "EventName": "fp_ops_retired_by_type.vector_mov",
> +    "EventCode": "0x0a",
> +    "BriefDescription": "Retired vector floating-point MOV ops.",
> +    "UMask": "0xa0"
> +  },
>    {
>      "EventName": "fp_ops_retired_by_type.vector_shuffle",
>      "EventCode": "0x0a",
>      "BriefDescription": "Retired vector floating-point shuffle ops (may include instructions not necessarily thought of as including shuffles e.g. horizontal add, dot product, and certain MOV instructions).",
>      "UMask": "0xb0"
>    },
> +  {
> +    "EventName": "fp_ops_retired_by_type.vector_bfloat",
> +    "EventCode": "0x0a",
> +    "BriefDescription": "Retired vector floating-point bfloat ops.",
> +    "UMask": "0xc0"
> +  },
>    {
>      "EventName": "fp_ops_retired_by_type.vector_logical",
>      "EventCode": "0x0a",
> @@ -278,7 +314,7 @@
>    {
>      "EventName": "sse_avx_ops_retired.mmx_add",
>      "EventCode": "0x0b",
> -    "BriefDescription": "Retired MMX integer add.",
> +    "BriefDescription": "Retired MMX integer add ops.",
>      "UMask": "0x01"
>    },
>    {
> @@ -299,16 +335,34 @@
>      "BriefDescription": "Retired MMX integer multiply-accumulate ops.",
>      "UMask": "0x04"
>    },
> +  {
> +    "EventName": "sse_avx_ops_retired.mmx_aes",
> +    "EventCode": "0x0b",
> +    "BriefDescription": "Retired MMX integer AES ops.",
> +    "UMask": "0x05"
> +  },
> +  {
> +    "EventName": "sse_avx_ops_retired.mmx_sha",
> +    "EventCode": "0x0b",
> +    "BriefDescription": "Retired MMX integer SHA ops.",
> +    "UMask": "0x06"
> +  },
>    {
>      "EventName": "sse_avx_ops_retired.mmx_cmp",
>      "EventCode": "0x0b",
>      "BriefDescription": "Retired MMX integer compare ops.",
>      "UMask": "0x07"
>    },
> +  {
> +    "EventName": "sse_avx_ops_retired.mmx_cvt",
> +    "EventCode": "0x0b",
> +    "BriefDescription": "Retired MMX integer convert or pack ops.",
> +    "UMask": "0x08"
> +  },
>    {
>      "EventName": "sse_avx_ops_retired.mmx_shift",
>      "EventCode": "0x0b",
> -    "BriefDescription": "Retired MMX integer shift ops.",
> +    "BriefDescription": "Retired MMX integer shift or rotate ops.",
>      "UMask": "0x09"
>    },
>    {
> @@ -324,9 +378,9 @@
>      "UMask": "0x0b"
>    },
>    {
> -    "EventName": "sse_avx_ops_retired.mmx_pack",
> +    "EventName": "sse_avx_ops_retired.mmx_vnni",

Just a heads up, when renaming events it may be a good idea to keep
the old name and mark the event as deprecated, then add the event
again with the new name. This avoids events breaking when the perf
tool is updated. Personally I feel vendors should get to decide about
this kind of thing, but there have been some strong sensitivities
around event names in the past.

Thanks,
Ian

>      "EventCode": "0x0b",
> -    "BriefDescription": "Retired MMX integer pack ops.",
> +    "BriefDescription": "Retired MMX integer VNNI ops.",
>      "UMask": "0x0c"
>    },
>    {
> @@ -390,15 +444,15 @@
>      "UMask": "0x70"
>    },
>    {
> -    "EventName": "sse_avx_ops_retired.sse_avx_clm",
> +    "EventName": "sse_avx_ops_retired.sse_avx_cvt",
>      "EventCode": "0x0b",
> -    "BriefDescription": "Retired SSE and AVX integer CLM ops.",
> +    "BriefDescription": "Retired SSE and AVX integer convert or pack ops.",
>      "UMask": "0x80"
>    },
>    {
>      "EventName": "sse_avx_ops_retired.sse_avx_shift",
>      "EventCode": "0x0b",
> -    "BriefDescription": "Retired SSE and AVX integer shift ops.",
> +    "BriefDescription": "Retired SSE and AVX integer shift or rotate ops.",
>      "UMask": "0x90"
>    },
>    {
> @@ -414,9 +468,9 @@
>      "UMask": "0xb0"
>    },
>    {
> -    "EventName": "sse_avx_ops_retired.sse_avx_pack",
> +    "EventName": "sse_avx_ops_retired.sse_avx_vnni",
>      "EventCode": "0x0b",
> -    "BriefDescription": "Retired SSE and AVX integer pack ops.",
> +    "BriefDescription": "Retired SSE and AVX integer VNNI ops.",
>      "UMask": "0xc0"
>    },
>    {
> @@ -497,12 +551,24 @@
>      "BriefDescription": "Retired 128-bit packed floating-point blend ops.",
>      "UMask": "0x09"
>    },
> +  {
> +    "EventName": "fp_pack_ops_retired.fp128_mov",
> +    "EventCode": "0x0c",
> +    "BriefDescription": "Retired 128-bit packed floating-point MOV ops.",
> +    "UMask": "0x0a"
> +  },
>    {
>      "EventName": "fp_pack_ops_retired.fp128_shuffle",
>      "EventCode": "0x0c",
>      "BriefDescription": "Retired 128-bit packed floating-point shuffle ops (may include instructions not necessarily thought of as including shuffles e.g. horizontal add, dot product, and certain MOV instructions).",
>      "UMask": "0x0b"
>    },
> +  {
> +    "EventName": "fp_pack_ops_retired.fp128_bfloat",
> +    "EventCode": "0x0c",
> +    "BriefDescription": "Retired 128-bit packed floating-point bfloat ops.",
> +    "UMask": "0x0c"
> +  },
>    {
>      "EventName": "fp_pack_ops_retired.fp128_logical",
>      "EventCode": "0x0c",
> @@ -575,12 +641,24 @@
>      "BriefDescription": "Retired 256-bit packed floating-point blend ops.",
>      "UMask": "0x90"
>    },
> +  {
> +    "EventName": "fp_pack_ops_retired.fp256_mov",
> +    "EventCode": "0x0c",
> +    "BriefDescription": "Retired 256-bit packed floating-point MOV ops.",
> +    "UMask": "0xa0"
> +  },
>    {
>      "EventName": "fp_pack_ops_retired.fp256_shuffle",
>      "EventCode": "0x0c",
>      "BriefDescription": "Retired 256-bit packed floating-point shuffle ops (may include instructions not necessarily thought of as including shuffles e.g. horizontal add, dot product, and certain MOV instructions).",
>      "UMask": "0xb0"
>    },
> +  {
> +    "EventName": "fp_pack_ops_retired.fp256_bfloat",
> +    "EventCode": "0x0c",
> +    "BriefDescription": "Retired 256-bit packed floating-point bfloat ops.",
> +    "UMask": "0xc0"
> +  },
>    {
>      "EventName": "fp_pack_ops_retired.fp256_logical",
>      "EventCode": "0x0c",
> @@ -648,15 +726,15 @@
>      "UMask": "0x07"
>    },
>    {
> -    "EventName": "packed_int_op_type.int128_clm",
> +    "EventName": "packed_int_op_type.int128_cvt",
>      "EventCode": "0x0d",
> -    "BriefDescription": "Retired 128-bit packed integer CLM ops.",
> +    "BriefDescription": "Retired 128-bit packed integer convert or pack ops.",
>      "UMask": "0x08"
>    },
>    {
>      "EventName": "packed_int_op_type.int128_shift",
>      "EventCode": "0x0d",
> -    "BriefDescription": "Retired 128-bit packed integer shift ops.",
> +    "BriefDescription": "Retired 128-bit packed integer shift or rotate ops.",
>      "UMask": "0x09"
>    },
>    {
> @@ -672,9 +750,9 @@
>      "UMask": "0x0b"
>    },
>    {
> -    "EventName": "packed_int_op_type.int128_pack",
> +    "EventName": "packed_int_op_type.int128_vnni",
>      "EventCode": "0x0d",
> -    "BriefDescription": "Retired 128-bit packed integer pack ops.",
> +    "BriefDescription": "Retired 128-bit packed integer VNNI ops.",
>      "UMask": "0x0c"
>    },
>    {
> @@ -719,16 +797,34 @@
>      "BriefDescription": "Retired 256-bit packed integer multiply-accumulate ops.",
>      "UMask": "0x40"
>    },
> +  {
> +    "EventName": "packed_int_op_type.int256_aes",
> +    "EventCode": "0x0d",
> +    "BriefDescription": "Retired 256-bit packed integer AES ops.",
> +    "UMask": "0x50"
> +  },
> +  {
> +    "EventName": "packed_int_op_type.int256_sha",
> +    "EventCode": "0x0d",
> +    "BriefDescription": "Retired 256-bit packed integer SHA ops.",
> +    "UMask": "0x60"
> +  },
>    {
>      "EventName": "packed_int_op_type.int256_cmp",
>      "EventCode": "0x0d",
>      "BriefDescription": "Retired 256-bit packed integer compare ops.",
>      "UMask": "0x70"
>    },
> +  {
> +    "EventName": "packed_int_op_type.int256_cvt",
> +    "EventCode": "0x0d",
> +    "BriefDescription": "Retired 256-bit packed integer convert or pack ops.",
> +    "UMask": "0x80"
> +  },
>    {
>      "EventName": "packed_int_op_type.int256_shift",
>      "EventCode": "0x0d",
> -    "BriefDescription": "Retired 256-bit packed integer shift ops.",
> +    "BriefDescription": "Retired 256-bit packed integer shift or rotate ops.",
>      "UMask": "0x90"
>    },
>    {
> @@ -744,9 +840,9 @@
>      "UMask": "0xb0"
>    },
>    {
> -    "EventName": "packed_int_op_type.int256_pack",
> +    "EventName": "packed_int_op_type.int256_vnni",
>      "EventCode": "0x0d",
> -    "BriefDescription": "Retired 256-bit packed integer pack ops.",
> +    "BriefDescription": "Retired 256-bit packed integer VNNI ops.",
>      "UMask": "0xc0"
>    },
>    {
> diff --git a/tools/perf/pmu-events/arch/x86/amdzen5/load-store.json b/tools/perf/pmu-events/arch/x86/amdzen5/load-store.json
> index 06bbaea15925..b1994539ece8 100644
> --- a/tools/perf/pmu-events/arch/x86/amdzen5/load-store.json
> +++ b/tools/perf/pmu-events/arch/x86/amdzen5/load-store.json
> @@ -8,9 +8,15 @@
>    {
>      "EventName": "ls_locks.bus_lock",
>      "EventCode": "0x25",
> -    "BriefDescription": "Retired Lock instructions which caused a bus lock.",
> +    "BriefDescription": "Retired lock instructions which caused a bus lock.",
>      "UMask": "0x01"
>    },
> +  {
> +    "EventName": "ls_locks.all",
> +    "EventCode": "0x25",
> +    "BriefDescription": "Retired lock instructions of all types.",
> +    "UMask": "0x1f"
> +  },
>    {
>      "EventName": "ls_ret_cl_flush",
>      "EventCode": "0x26",
> --
> 2.53.0
>

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

* Re: [PATCH v2 1/2] perf vendor events amd: Update Zen 5 core events
  2026-07-06 17:14 ` Ian Rogers
@ 2026-07-06 17:21   ` Sandipan Das
  2026-07-06 17:29     ` Namhyung Kim
  0 siblings, 1 reply; 6+ messages in thread
From: Sandipan Das @ 2026-07-06 17:21 UTC (permalink / raw)
  To: Ian Rogers
  Cc: linux-perf-users, linux-kernel, Peter Zijlstra, Ingo Molnar,
	Arnaldo Carvalho de Melo, Namhyung Kim, Mark Rutland,
	Alexander Shishkin, Jiri Olsa, Adrian Hunter, James Clark, x86,
	H . Peter Anvin, Ravi Bangoria, Ananth Narayan

On 06-07-2026 22:44, Ian Rogers wrote:
> On Mon, Jun 22, 2026 at 10:28 PM Sandipan Das <sandipan.das@amd.com> wrote:
>>
>> Update definitions for the following events.
>>   * PMCx00A - Add missing unit masks
>>   * PMCx00B - Add missing unit masks and fix descriptions
>>   * PMCx00C - Add missing unit masks
>>   * PMCx00D - Add missing unit masks
>>   * PMCx025 - Add missing unit masks and fix descriptions
>>
>> Fixes: 45c072f2537a ("perf vendor events amd: Add Zen 5 core events")
>> Signed-off-by: Sandipan Das <sandipan.das@amd.com>
>> ---
>>
>> Previous versions can be found at:
>> v1: https://lore.kernel.org/all/f16d1391366762dee0d49f00697f5e6ea913e2c1.1780330378.git.sandipan.das@amd.com/
>>
>> Changes in v2:
>>   * Fix event description pointed out by sashiko.
>>
>> ---
>>  .../arch/x86/amdzen5/floating-point.json      | 130 +++++++++++++++---
>>  .../arch/x86/amdzen5/load-store.json          |   8 +-
>>  2 files changed, 120 insertions(+), 18 deletions(-)
>>
>> diff --git a/tools/perf/pmu-events/arch/x86/amdzen5/floating-point.json b/tools/perf/pmu-events/arch/x86/amdzen5/floating-point.json
>> index 9204bfb1d69e..569975b53cc3 100644
>> --- a/tools/perf/pmu-events/arch/x86/amdzen5/floating-point.json
>> +++ b/tools/perf/pmu-events/arch/x86/amdzen5/floating-point.json
>> @@ -179,6 +179,30 @@
>>      "BriefDescription": "Retired scalar floating-point blend ops.",
>>      "UMask": "0x09"
>>    },
>> +  {
>> +    "EventName": "fp_ops_retired_by_type.scalar_mov",
>> +    "EventCode": "0x0a",
>> +    "BriefDescription": "Retired scalar floating-point MOV ops.",
>> +    "UMask": "0x0a"
>> +  },
>> +  {
>> +    "EventName": "fp_ops_retired_by_type.scalar_shuffle",
>> +    "EventCode": "0x0a",
>> +    "BriefDescription": "Retired scalar floating-point shuffle ops (may include instructions not necessarily thought of as including shuffles e.g. horizontal add, dot product, and certain MOV instructions).",
>> +    "UMask": "0x0b"
>> +  },
>> +  {
>> +    "EventName": "fp_ops_retired_by_type.scalar_bfloat",
>> +    "EventCode": "0x0a",
>> +    "BriefDescription": "Retired scalar floating-point bfloat ops.",
>> +    "UMask": "0x0c"
>> +  },
>> +  {
>> +    "EventName": "fp_ops_retired_by_type.scalar_logical",
>> +    "EventCode": "0x0a",
>> +    "BriefDescription": "Retired scalar floating-point logical ops.",
>> +    "UMask": "0x0d"
>> +  },
>>    {
>>      "EventName": "fp_ops_retired_by_type.scalar_other",
>>      "EventCode": "0x0a",
>> @@ -245,12 +269,24 @@
>>      "BriefDescription": "Retired vector floating-point blend ops.",
>>      "UMask": "0x90"
>>    },
>> +  {
>> +    "EventName": "fp_ops_retired_by_type.vector_mov",
>> +    "EventCode": "0x0a",
>> +    "BriefDescription": "Retired vector floating-point MOV ops.",
>> +    "UMask": "0xa0"
>> +  },
>>    {
>>      "EventName": "fp_ops_retired_by_type.vector_shuffle",
>>      "EventCode": "0x0a",
>>      "BriefDescription": "Retired vector floating-point shuffle ops (may include instructions not necessarily thought of as including shuffles e.g. horizontal add, dot product, and certain MOV instructions).",
>>      "UMask": "0xb0"
>>    },
>> +  {
>> +    "EventName": "fp_ops_retired_by_type.vector_bfloat",
>> +    "EventCode": "0x0a",
>> +    "BriefDescription": "Retired vector floating-point bfloat ops.",
>> +    "UMask": "0xc0"
>> +  },
>>    {
>>      "EventName": "fp_ops_retired_by_type.vector_logical",
>>      "EventCode": "0x0a",
>> @@ -278,7 +314,7 @@
>>    {
>>      "EventName": "sse_avx_ops_retired.mmx_add",
>>      "EventCode": "0x0b",
>> -    "BriefDescription": "Retired MMX integer add.",
>> +    "BriefDescription": "Retired MMX integer add ops.",
>>      "UMask": "0x01"
>>    },
>>    {
>> @@ -299,16 +335,34 @@
>>      "BriefDescription": "Retired MMX integer multiply-accumulate ops.",
>>      "UMask": "0x04"
>>    },
>> +  {
>> +    "EventName": "sse_avx_ops_retired.mmx_aes",
>> +    "EventCode": "0x0b",
>> +    "BriefDescription": "Retired MMX integer AES ops.",
>> +    "UMask": "0x05"
>> +  },
>> +  {
>> +    "EventName": "sse_avx_ops_retired.mmx_sha",
>> +    "EventCode": "0x0b",
>> +    "BriefDescription": "Retired MMX integer SHA ops.",
>> +    "UMask": "0x06"
>> +  },
>>    {
>>      "EventName": "sse_avx_ops_retired.mmx_cmp",
>>      "EventCode": "0x0b",
>>      "BriefDescription": "Retired MMX integer compare ops.",
>>      "UMask": "0x07"
>>    },
>> +  {
>> +    "EventName": "sse_avx_ops_retired.mmx_cvt",
>> +    "EventCode": "0x0b",
>> +    "BriefDescription": "Retired MMX integer convert or pack ops.",
>> +    "UMask": "0x08"
>> +  },
>>    {
>>      "EventName": "sse_avx_ops_retired.mmx_shift",
>>      "EventCode": "0x0b",
>> -    "BriefDescription": "Retired MMX integer shift ops.",
>> +    "BriefDescription": "Retired MMX integer shift or rotate ops.",
>>      "UMask": "0x09"
>>    },
>>    {
>> @@ -324,9 +378,9 @@
>>      "UMask": "0x0b"
>>    },
>>    {
>> -    "EventName": "sse_avx_ops_retired.mmx_pack",
>> +    "EventName": "sse_avx_ops_retired.mmx_vnni",
> 
> Just a heads up, when renaming events it may be a good idea to keep
> the old name and mark the event as deprecated, then add the event
> again with the new name. This avoids events breaking when the perf
> tool is updated. Personally I feel vendors should get to decide about
> this kind of thing, but there have been some strong sensitivities
> around event names in the past.
> 

Thanks for the suggestion. I agree that renames can be problematic
for existing scripted workflows.

Namhyung, please let me know if you want to revert these changes.
I can send out v3.

> 
>>      "EventCode": "0x0b",
>> -    "BriefDescription": "Retired MMX integer pack ops.",
>> +    "BriefDescription": "Retired MMX integer VNNI ops.",
>>      "UMask": "0x0c"
>>    },
>>    {
>> @@ -390,15 +444,15 @@
>>      "UMask": "0x70"
>>    },
>>    {
>> -    "EventName": "sse_avx_ops_retired.sse_avx_clm",
>> +    "EventName": "sse_avx_ops_retired.sse_avx_cvt",
>>      "EventCode": "0x0b",
>> -    "BriefDescription": "Retired SSE and AVX integer CLM ops.",
>> +    "BriefDescription": "Retired SSE and AVX integer convert or pack ops.",
>>      "UMask": "0x80"
>>    },
>>    {
>>      "EventName": "sse_avx_ops_retired.sse_avx_shift",
>>      "EventCode": "0x0b",
>> -    "BriefDescription": "Retired SSE and AVX integer shift ops.",
>> +    "BriefDescription": "Retired SSE and AVX integer shift or rotate ops.",
>>      "UMask": "0x90"
>>    },
>>    {
>> @@ -414,9 +468,9 @@
>>      "UMask": "0xb0"
>>    },
>>    {
>> -    "EventName": "sse_avx_ops_retired.sse_avx_pack",
>> +    "EventName": "sse_avx_ops_retired.sse_avx_vnni",
>>      "EventCode": "0x0b",
>> -    "BriefDescription": "Retired SSE and AVX integer pack ops.",
>> +    "BriefDescription": "Retired SSE and AVX integer VNNI ops.",
>>      "UMask": "0xc0"
>>    },
>>    {
>> @@ -497,12 +551,24 @@
>>      "BriefDescription": "Retired 128-bit packed floating-point blend ops.",
>>      "UMask": "0x09"
>>    },
>> +  {
>> +    "EventName": "fp_pack_ops_retired.fp128_mov",
>> +    "EventCode": "0x0c",
>> +    "BriefDescription": "Retired 128-bit packed floating-point MOV ops.",
>> +    "UMask": "0x0a"
>> +  },
>>    {
>>      "EventName": "fp_pack_ops_retired.fp128_shuffle",
>>      "EventCode": "0x0c",
>>      "BriefDescription": "Retired 128-bit packed floating-point shuffle ops (may include instructions not necessarily thought of as including shuffles e.g. horizontal add, dot product, and certain MOV instructions).",
>>      "UMask": "0x0b"
>>    },
>> +  {
>> +    "EventName": "fp_pack_ops_retired.fp128_bfloat",
>> +    "EventCode": "0x0c",
>> +    "BriefDescription": "Retired 128-bit packed floating-point bfloat ops.",
>> +    "UMask": "0x0c"
>> +  },
>>    {
>>      "EventName": "fp_pack_ops_retired.fp128_logical",
>>      "EventCode": "0x0c",
>> @@ -575,12 +641,24 @@
>>      "BriefDescription": "Retired 256-bit packed floating-point blend ops.",
>>      "UMask": "0x90"
>>    },
>> +  {
>> +    "EventName": "fp_pack_ops_retired.fp256_mov",
>> +    "EventCode": "0x0c",
>> +    "BriefDescription": "Retired 256-bit packed floating-point MOV ops.",
>> +    "UMask": "0xa0"
>> +  },
>>    {
>>      "EventName": "fp_pack_ops_retired.fp256_shuffle",
>>      "EventCode": "0x0c",
>>      "BriefDescription": "Retired 256-bit packed floating-point shuffle ops (may include instructions not necessarily thought of as including shuffles e.g. horizontal add, dot product, and certain MOV instructions).",
>>      "UMask": "0xb0"
>>    },
>> +  {
>> +    "EventName": "fp_pack_ops_retired.fp256_bfloat",
>> +    "EventCode": "0x0c",
>> +    "BriefDescription": "Retired 256-bit packed floating-point bfloat ops.",
>> +    "UMask": "0xc0"
>> +  },
>>    {
>>      "EventName": "fp_pack_ops_retired.fp256_logical",
>>      "EventCode": "0x0c",
>> @@ -648,15 +726,15 @@
>>      "UMask": "0x07"
>>    },
>>    {
>> -    "EventName": "packed_int_op_type.int128_clm",
>> +    "EventName": "packed_int_op_type.int128_cvt",
>>      "EventCode": "0x0d",
>> -    "BriefDescription": "Retired 128-bit packed integer CLM ops.",
>> +    "BriefDescription": "Retired 128-bit packed integer convert or pack ops.",
>>      "UMask": "0x08"
>>    },
>>    {
>>      "EventName": "packed_int_op_type.int128_shift",
>>      "EventCode": "0x0d",
>> -    "BriefDescription": "Retired 128-bit packed integer shift ops.",
>> +    "BriefDescription": "Retired 128-bit packed integer shift or rotate ops.",
>>      "UMask": "0x09"
>>    },
>>    {
>> @@ -672,9 +750,9 @@
>>      "UMask": "0x0b"
>>    },
>>    {
>> -    "EventName": "packed_int_op_type.int128_pack",
>> +    "EventName": "packed_int_op_type.int128_vnni",
>>      "EventCode": "0x0d",
>> -    "BriefDescription": "Retired 128-bit packed integer pack ops.",
>> +    "BriefDescription": "Retired 128-bit packed integer VNNI ops.",
>>      "UMask": "0x0c"
>>    },
>>    {
>> @@ -719,16 +797,34 @@
>>      "BriefDescription": "Retired 256-bit packed integer multiply-accumulate ops.",
>>      "UMask": "0x40"
>>    },
>> +  {
>> +    "EventName": "packed_int_op_type.int256_aes",
>> +    "EventCode": "0x0d",
>> +    "BriefDescription": "Retired 256-bit packed integer AES ops.",
>> +    "UMask": "0x50"
>> +  },
>> +  {
>> +    "EventName": "packed_int_op_type.int256_sha",
>> +    "EventCode": "0x0d",
>> +    "BriefDescription": "Retired 256-bit packed integer SHA ops.",
>> +    "UMask": "0x60"
>> +  },
>>    {
>>      "EventName": "packed_int_op_type.int256_cmp",
>>      "EventCode": "0x0d",
>>      "BriefDescription": "Retired 256-bit packed integer compare ops.",
>>      "UMask": "0x70"
>>    },
>> +  {
>> +    "EventName": "packed_int_op_type.int256_cvt",
>> +    "EventCode": "0x0d",
>> +    "BriefDescription": "Retired 256-bit packed integer convert or pack ops.",
>> +    "UMask": "0x80"
>> +  },
>>    {
>>      "EventName": "packed_int_op_type.int256_shift",
>>      "EventCode": "0x0d",
>> -    "BriefDescription": "Retired 256-bit packed integer shift ops.",
>> +    "BriefDescription": "Retired 256-bit packed integer shift or rotate ops.",
>>      "UMask": "0x90"
>>    },
>>    {
>> @@ -744,9 +840,9 @@
>>      "UMask": "0xb0"
>>    },
>>    {
>> -    "EventName": "packed_int_op_type.int256_pack",
>> +    "EventName": "packed_int_op_type.int256_vnni",
>>      "EventCode": "0x0d",
>> -    "BriefDescription": "Retired 256-bit packed integer pack ops.",
>> +    "BriefDescription": "Retired 256-bit packed integer VNNI ops.",
>>      "UMask": "0xc0"
>>    },
>>    {
>> diff --git a/tools/perf/pmu-events/arch/x86/amdzen5/load-store.json b/tools/perf/pmu-events/arch/x86/amdzen5/load-store.json
>> index 06bbaea15925..b1994539ece8 100644
>> --- a/tools/perf/pmu-events/arch/x86/amdzen5/load-store.json
>> +++ b/tools/perf/pmu-events/arch/x86/amdzen5/load-store.json
>> @@ -8,9 +8,15 @@
>>    {
>>      "EventName": "ls_locks.bus_lock",
>>      "EventCode": "0x25",
>> -    "BriefDescription": "Retired Lock instructions which caused a bus lock.",
>> +    "BriefDescription": "Retired lock instructions which caused a bus lock.",
>>      "UMask": "0x01"
>>    },
>> +  {
>> +    "EventName": "ls_locks.all",
>> +    "EventCode": "0x25",
>> +    "BriefDescription": "Retired lock instructions of all types.",
>> +    "UMask": "0x1f"
>> +  },
>>    {
>>      "EventName": "ls_ret_cl_flush",
>>      "EventCode": "0x26",
>> --
>> 2.53.0
>>


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

* Re: [PATCH v2 1/2] perf vendor events amd: Update Zen 5 core events
  2026-07-06 17:21   ` Sandipan Das
@ 2026-07-06 17:29     ` Namhyung Kim
  0 siblings, 0 replies; 6+ messages in thread
From: Namhyung Kim @ 2026-07-06 17:29 UTC (permalink / raw)
  To: Sandipan Das
  Cc: Ian Rogers, linux-perf-users, linux-kernel, Peter Zijlstra,
	Ingo Molnar, Arnaldo Carvalho de Melo, Mark Rutland,
	Alexander Shishkin, Jiri Olsa, Adrian Hunter, James Clark, x86,
	H . Peter Anvin, Ravi Bangoria, Ananth Narayan

Hello,

On Mon, Jul 06, 2026 at 10:51:20PM +0530, Sandipan Das wrote:
> On 06-07-2026 22:44, Ian Rogers wrote:
> > On Mon, Jun 22, 2026 at 10:28 PM Sandipan Das <sandipan.das@amd.com> wrote:
> >>
> >> Update definitions for the following events.
> >>   * PMCx00A - Add missing unit masks
> >>   * PMCx00B - Add missing unit masks and fix descriptions
> >>   * PMCx00C - Add missing unit masks
> >>   * PMCx00D - Add missing unit masks
> >>   * PMCx025 - Add missing unit masks and fix descriptions
> >>
> >> Fixes: 45c072f2537a ("perf vendor events amd: Add Zen 5 core events")
> >> Signed-off-by: Sandipan Das <sandipan.das@amd.com>
> >> ---
> >>
> >> Previous versions can be found at:
> >> v1: https://lore.kernel.org/all/f16d1391366762dee0d49f00697f5e6ea913e2c1.1780330378.git.sandipan.das@amd.com/
> >>
> >> Changes in v2:
> >>   * Fix event description pointed out by sashiko.
> >>
> >> ---
> >>  .../arch/x86/amdzen5/floating-point.json      | 130 +++++++++++++++---
> >>  .../arch/x86/amdzen5/load-store.json          |   8 +-
> >>  2 files changed, 120 insertions(+), 18 deletions(-)
> >>
> >> diff --git a/tools/perf/pmu-events/arch/x86/amdzen5/floating-point.json b/tools/perf/pmu-events/arch/x86/amdzen5/floating-point.json
> >> index 9204bfb1d69e..569975b53cc3 100644
> >> --- a/tools/perf/pmu-events/arch/x86/amdzen5/floating-point.json
> >> +++ b/tools/perf/pmu-events/arch/x86/amdzen5/floating-point.json
> >> @@ -179,6 +179,30 @@
> >>      "BriefDescription": "Retired scalar floating-point blend ops.",
> >>      "UMask": "0x09"
> >>    },
> >> +  {
> >> +    "EventName": "fp_ops_retired_by_type.scalar_mov",
> >> +    "EventCode": "0x0a",
> >> +    "BriefDescription": "Retired scalar floating-point MOV ops.",
> >> +    "UMask": "0x0a"
> >> +  },
> >> +  {
> >> +    "EventName": "fp_ops_retired_by_type.scalar_shuffle",
> >> +    "EventCode": "0x0a",
> >> +    "BriefDescription": "Retired scalar floating-point shuffle ops (may include instructions not necessarily thought of as including shuffles e.g. horizontal add, dot product, and certain MOV instructions).",
> >> +    "UMask": "0x0b"
> >> +  },
> >> +  {
> >> +    "EventName": "fp_ops_retired_by_type.scalar_bfloat",
> >> +    "EventCode": "0x0a",
> >> +    "BriefDescription": "Retired scalar floating-point bfloat ops.",
> >> +    "UMask": "0x0c"
> >> +  },
> >> +  {
> >> +    "EventName": "fp_ops_retired_by_type.scalar_logical",
> >> +    "EventCode": "0x0a",
> >> +    "BriefDescription": "Retired scalar floating-point logical ops.",
> >> +    "UMask": "0x0d"
> >> +  },
> >>    {
> >>      "EventName": "fp_ops_retired_by_type.scalar_other",
> >>      "EventCode": "0x0a",
> >> @@ -245,12 +269,24 @@
> >>      "BriefDescription": "Retired vector floating-point blend ops.",
> >>      "UMask": "0x90"
> >>    },
> >> +  {
> >> +    "EventName": "fp_ops_retired_by_type.vector_mov",
> >> +    "EventCode": "0x0a",
> >> +    "BriefDescription": "Retired vector floating-point MOV ops.",
> >> +    "UMask": "0xa0"
> >> +  },
> >>    {
> >>      "EventName": "fp_ops_retired_by_type.vector_shuffle",
> >>      "EventCode": "0x0a",
> >>      "BriefDescription": "Retired vector floating-point shuffle ops (may include instructions not necessarily thought of as including shuffles e.g. horizontal add, dot product, and certain MOV instructions).",
> >>      "UMask": "0xb0"
> >>    },
> >> +  {
> >> +    "EventName": "fp_ops_retired_by_type.vector_bfloat",
> >> +    "EventCode": "0x0a",
> >> +    "BriefDescription": "Retired vector floating-point bfloat ops.",
> >> +    "UMask": "0xc0"
> >> +  },
> >>    {
> >>      "EventName": "fp_ops_retired_by_type.vector_logical",
> >>      "EventCode": "0x0a",
> >> @@ -278,7 +314,7 @@
> >>    {
> >>      "EventName": "sse_avx_ops_retired.mmx_add",
> >>      "EventCode": "0x0b",
> >> -    "BriefDescription": "Retired MMX integer add.",
> >> +    "BriefDescription": "Retired MMX integer add ops.",
> >>      "UMask": "0x01"
> >>    },
> >>    {
> >> @@ -299,16 +335,34 @@
> >>      "BriefDescription": "Retired MMX integer multiply-accumulate ops.",
> >>      "UMask": "0x04"
> >>    },
> >> +  {
> >> +    "EventName": "sse_avx_ops_retired.mmx_aes",
> >> +    "EventCode": "0x0b",
> >> +    "BriefDescription": "Retired MMX integer AES ops.",
> >> +    "UMask": "0x05"
> >> +  },
> >> +  {
> >> +    "EventName": "sse_avx_ops_retired.mmx_sha",
> >> +    "EventCode": "0x0b",
> >> +    "BriefDescription": "Retired MMX integer SHA ops.",
> >> +    "UMask": "0x06"
> >> +  },
> >>    {
> >>      "EventName": "sse_avx_ops_retired.mmx_cmp",
> >>      "EventCode": "0x0b",
> >>      "BriefDescription": "Retired MMX integer compare ops.",
> >>      "UMask": "0x07"
> >>    },
> >> +  {
> >> +    "EventName": "sse_avx_ops_retired.mmx_cvt",
> >> +    "EventCode": "0x0b",
> >> +    "BriefDescription": "Retired MMX integer convert or pack ops.",
> >> +    "UMask": "0x08"
> >> +  },
> >>    {
> >>      "EventName": "sse_avx_ops_retired.mmx_shift",
> >>      "EventCode": "0x0b",
> >> -    "BriefDescription": "Retired MMX integer shift ops.",
> >> +    "BriefDescription": "Retired MMX integer shift or rotate ops.",
> >>      "UMask": "0x09"
> >>    },
> >>    {
> >> @@ -324,9 +378,9 @@
> >>      "UMask": "0x0b"
> >>    },
> >>    {
> >> -    "EventName": "sse_avx_ops_retired.mmx_pack",
> >> +    "EventName": "sse_avx_ops_retired.mmx_vnni",
> > 
> > Just a heads up, when renaming events it may be a good idea to keep
> > the old name and mark the event as deprecated, then add the event
> > again with the new name. This avoids events breaking when the perf
> > tool is updated. Personally I feel vendors should get to decide about
> > this kind of thing, but there have been some strong sensitivities
> > around event names in the past.
> > 
> 
> Thanks for the suggestion. I agree that renames can be problematic
> for existing scripted workflows.
> 
> Namhyung, please let me know if you want to revert these changes.
> I can send out v3.

It'd be nice if you can send an incremental fix on top of the current
perf-tools-next.

Thanks,
Namhyung


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

end of thread, other threads:[~2026-07-06 17:29 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-06-23  5:28 [PATCH v2 1/2] perf vendor events amd: Update Zen 5 core events Sandipan Das
2026-06-23  5:28 ` [PATCH v2 2/2] perf vendor events amd: Update Zen 6 " Sandipan Das
2026-07-06 16:58 ` [PATCH v2 1/2] perf vendor events amd: Update Zen 5 " Namhyung Kim
2026-07-06 17:14 ` Ian Rogers
2026-07-06 17:21   ` Sandipan Das
2026-07-06 17:29     ` Namhyung Kim

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox