[v2] perf list: Add PMU pai_ext event description for IBM z16

Message ID 20221111135402.858623-1-tmricht@linux.ibm.com
State New
Headers
Series [v2] perf list: Add PMU pai_ext event description for IBM z16 |

Commit Message

Thomas Richter Nov. 11, 2022, 1:54 p.m. UTC
  Add the event description for the IBM z16 pai_ext PMU released with
commit c432fefe8e62 ("s390/pai: Add support for PAI Extension 1 NNPA counters")

The document SA22-7832-13 "z/Architecture Principles of Operation",
published May, 2022, contains the description of the
Processor Activity Instrumentation Facility and the NNPA counter
set., See Pages 5-113 to 5-116.

Signed-off-by: Thomas Richter <tmricht@linux.ibm.com>
---
 .../pmu-events/arch/s390/cf_z16/pai_ext.json  | 198 ++++++++++++++++++
 tools/perf/pmu-events/jevents.py              |   1 +
 2 files changed, 199 insertions(+)
 create mode 100644 tools/perf/pmu-events/arch/s390/cf_z16/pai_ext.json
  

Comments

Arnaldo Carvalho de Melo Nov. 14, 2022, 4:06 p.m. UTC | #1
Em Fri, Nov 11, 2022 at 02:54:02PM +0100, Thomas Richter escreveu:
> Add the event description for the IBM z16 pai_ext PMU released with
> commit c432fefe8e62 ("s390/pai: Add support for PAI Extension 1 NNPA counters")
> 
> The document SA22-7832-13 "z/Architecture Principles of Operation",
> published May, 2022, contains the description of the
> Processor Activity Instrumentation Facility and the NNPA counter
> set., See Pages 5-113 to 5-116.
> 
> Signed-off-by: Thomas Richter <tmricht@linux.ibm.com>
> ---
>  .../pmu-events/arch/s390/cf_z16/pai_ext.json  | 198 ++++++++++++++++++
>  tools/perf/pmu-events/jevents.py              |   1 +
>  2 files changed, 199 insertions(+)
>  create mode 100644 tools/perf/pmu-events/arch/s390/cf_z16/pai_ext.json
> 
> diff --git a/tools/perf/pmu-events/arch/s390/cf_z16/pai_ext.json b/tools/perf/pmu-events/arch/s390/cf_z16/pai_ext.json
> new file mode 100644
> index 000000000000..8bee481f05d5
> --- /dev/null
> +++ b/tools/perf/pmu-events/arch/s390/cf_z16/pai_ext.json
> @@ -0,0 +1,198 @@
> +[
> +	{
> +		"Unit": "PAI-EXT",
> +		"EventCode": "6144",
> +		"EventName": "NNPA_ALL",
> +		"BriefDescription": "NNPA ALL",
> +		"PublicDescription": "Sum of all non zero NNPA counters"
> +	},

Since the Brief description mentions NNPA, shouldn't the Public
Description expand on this "NNPA" acronym?, something like:

Oops, can't expand on that since there isn't a link to that SA22-7832-13
document.

Googling for it...

https://www-40.ibm.com/servers/resourcelink/svc03100.nsf/pages/zResourceLinkUrl?OpenDocument&url=http://www.ibm.com/servers/resourcelink/lib03010.nsf/0/B9DE5F05A9D57819852571C500428F9A/$file/SA22-7832-13.pdf

Ok, requires registration.

I wonder what is the value of these descriptions then :-\

I miss Ingo jumping into these discussions :-)

- Arnaldo

> +	{
> +		"Unit": "PAI-EXT",
> +		"EventCode": "6145",
> +		"EventName": "NNPA_ADD",
> +		"BriefDescription": "NNPA ADD",
> +		"PublicDescription": "NNPA ADD function ending with CC=0"
> +	},
> +	{
> +		"Unit": "PAI-EXT",
> +		"EventCode": "6146",
> +		"EventName": "NNPA_SUB",
> +		"BriefDescription": "NNPA SUB",
> +		"PublicDescription": "NNPA SUB function ending with CC=0"
> +	},
> +	{
> +		"Unit": "PAI-EXT",
> +		"EventCode": "6147",
> +		"EventName": "NNPA_MUL",
> +		"BriefDescription": "NNPA MUL",
> +		"PublicDescription": "NNPA MUL function ending with CC=0"
> +	},
> +	{
> +		"Unit": "PAI-EXT",
> +		"EventCode": "6148",
> +		"EventName": "NNPA_DIV",
> +		"BriefDescription": "NNPA DIV",
> +		"PublicDescription": "NNPA DIV function ending with CC=0"
> +	},
> +	{
> +		"Unit": "PAI-EXT",
> +		"EventCode": "6149",
> +		"EventName": "NNPA_MIN",
> +		"BriefDescription": "NNPA MIN",
> +		"PublicDescription": "NNPA MIN function ending with CC=0"
> +	},
> +	{
> +		"Unit": "PAI-EXT",
> +		"EventCode": "6150",
> +		"EventName": "NNPA_MAX",
> +		"BriefDescription": "NNPA MAX",
> +		"PublicDescription": "NNPA-MAX function ending with CC=0"
> +	},
> +	{
> +		"Unit": "PAI-EXT",
> +		"EventCode": "6151",
> +		"EventName": "NNPA_LOG",
> +		"BriefDescription": "NNPA LOG",
> +		"PublicDescription": "NNPA-LOG function ending with CC=0"
> +	},
> +	{
> +		"Unit": "PAI-EXT",
> +		"EventCode": "6152",
> +		"EventName": "NNPA_EXP",
> +		"BriefDescription": "NNPA EXP",
> +		"PublicDescription": "NNPA-EXP function ending with CC=0"
> +	},
> +	{
> +		"Unit": "PAI-EXT",
> +		"EventCode": "6153",
> +		"EventName": "NNPA_IBM_RESERVED_9",
> +		"BriefDescription": "Reserved for IBM use",
> +		"PublicDescription": "Reserved for IBM use"
> +	},
> +	{
> +		"Unit": "PAI-EXT",
> +		"EventCode": "6154",
> +		"EventName": "NNPA_RELU",
> +		"BriefDescription": "NNPA RELU",
> +		"PublicDescription": "NNPA-RELU function ending with CC=0"
> +	},
> +	{
> +		"Unit": "PAI-EXT",
> +		"EventCode": "6155",
> +		"EventName": "NNPA_TANH",
> +		"BriefDescription": "NNPA TANH",
> +		"PublicDescription": "NNPA-TANH function ending with CC=0"
> +	},
> +	{
> +		"Unit": "PAI-EXT",
> +		"EventCode": "6156",
> +		"EventName": "NNPA_SIGMOID",
> +		"BriefDescription": "NNPA SIGMOID",
> +		"PublicDescription": "NNPA-SIGMOID function ending with CC=0"
> +	},
> +	{
> +		"Unit": "PAI-EXT",
> +		"EventCode": "6157",
> +		"EventName": "NNPA_SOFTMAX",
> +		"BriefDescription": "NNPA SOFTMAX",
> +		"PublicDescription": "NNPA-SOFTMAX function ending with CC=0"
> +	},
> +	{
> +		"Unit": "PAI-EXT",
> +		"EventCode": "6158",
> +		"EventName": "NNPA_BATCHNORM",
> +		"BriefDescription": "NNPA BATCHNORM",
> +		"PublicDescription": "NNPA-BATCHNORM function ending with CC=0"
> +	},
> +	{
> +		"Unit": "PAI-EXT",
> +		"EventCode": "6159",
> +		"EventName": "NNPA_MAXPOOL2D",
> +		"BriefDescription": "NNPA MAXPOOL2D",
> +		"PublicDescription": "NNPA-MAXPOOL2D function ending with CC=0"
> +	},
> +	{
> +		"Unit": "PAI-EXT",
> +		"EventCode": "6160",
> +		"EventName": "NNPA_AVGPOOL2D",
> +		"BriefDescription": "NNPA AVGPOOL2D",
> +		"PublicDescription": "NNPA-AVGPOOL2D function ending with CC=0"
> +	},
> +	{
> +		"Unit": "PAI-EXT",
> +		"EventCode": "6161",
> +		"EventName": "NNPA_LSTMACT",
> +		"BriefDescription": "NNPA LSTMACT",
> +		"PublicDescription": "NNPA-LSTMACT function ending with CC=0"
> +	},
> +	{
> +		"Unit": "PAI-EXT",
> +		"EventCode": "6162",
> +		"EventName": "NNPA_GRUACT",
> +		"BriefDescription": "NNPA GRUACT",
> +		"PublicDescription": "NNPA-GRUACT function ending with CC=0"
> +	},
> +	{
> +		"Unit": "PAI-EXT",
> +		"EventCode": "6163",
> +		"EventName": "NNPA_CONVOLUTION",
> +		"BriefDescription": "NNPA CONVOLUTION",
> +		"PublicDescription": "NNPA-CONVOLUTION function ending with CC=0"
> +	},
> +	{
> +		"Unit": "PAI-EXT",
> +		"EventCode": "6164",
> +		"EventName": "NNPA_MATMUL_OP",
> +		"BriefDescription": "NNPA MATMUL OP",
> +		"PublicDescription": "NNPA-MATMUL-OP function ending with CC=0"
> +	},
> +	{
> +		"Unit": "PAI-EXT",
> +		"EventCode": "6165",
> +		"EventName": "NNPA_MATMUL_OP_BCAST23",
> +		"BriefDescription": "NNPA NNPA-MATMUL_OP_BCAST23",
> +		"PublicDescription": "NNPA-MATMUL-OP-BCAST23 function ending with CC=0"
> +	},
> +	{
> +		"Unit": "PAI-EXT",
> +		"EventCode": "6166",
> +		"EventName": "NNPA_SMALLBATCH",
> +		"BriefDescription": "NNPA SMALLBATCH",
> +		"PublicDescription": "NNPA function with conditions as described in Common Operation"
> +	},
> +	{
> +		"Unit": "PAI-EXT",
> +		"EventCode": "6167",
> +		"EventName": "NNPA_LARGEDIM",
> +		"BriefDescription": "NNPA LARGEDIM",
> +		"PublicDescription": "NNPA function with conditions as described in Common Operation"
> +	},
> +	{
> +		"Unit": "PAI-EXT",
> +		"EventCode": "6168",
> +		"EventName": "NNPA_SMALLTENSOR",
> +		"BriefDescription": "NNPA SMALLTENSOR",
> +		"PublicDescription": "NNPA function with conditions as described in Common Operation"
> +	},
> +	{
> +		"Unit": "PAI-EXT",
> +		"EventCode": "6169",
> +		"EventName": "NNPA_1MFRAME",
> +		"BriefDescription": "NNPA 1MFRAME",
> +		"PublicDescription": "NNPA function with conditions as described in Common Operation"
> +	},
> +	{
> +		"Unit": "PAI-EXT",
> +		"EventCode": "6170",
> +		"EventName": "NNPA_2GFRAME",
> +		"BriefDescription": "NNPA 2GFRAME",
> +		"PublicDescription": "NNPA function with conditions as described in Common Operation"
> +	},
> +	{
> +		"Unit": "PAI-EXT",
> +		"EventCode": "6171",
> +		"EventName": "NNPA_ACCESSEXCEPT",
> +		"BriefDescription": "NNPA ACCESSEXCEPT",
> +		"PublicDescription": "NNPA function with conditions as described in Common Operation"
> + 	}
> +]
> diff --git a/tools/perf/pmu-events/jevents.py b/tools/perf/pmu-events/jevents.py
> index 0daa3e007528..da630aab948b 100755
> --- a/tools/perf/pmu-events/jevents.py
> +++ b/tools/perf/pmu-events/jevents.py
> @@ -225,6 +225,7 @@ class JsonEvent:
>            'CPU-M-CF': 'cpum_cf',
>            'CPU-M-SF': 'cpum_sf',
>            'PAI-CRYPTO' : 'pai_crypto',
> +          'PAI-EXT' : 'pai_ext',
>            'UPI LL': 'uncore_upi',
>            'hisi_sicl,cpa': 'hisi_sicl,cpa',
>            'hisi_sccl,ddrc': 'hisi_sccl,ddrc',
> -- 
> 2.37.3
  
Thomas Richter Nov. 15, 2022, 8:58 a.m. UTC | #2
On 11/14/22 17:06, Arnaldo Carvalho de Melo wrote:
> Em Fri, Nov 11, 2022 at 02:54:02PM +0100, Thomas Richter escreveu:
>> Add the event description for the IBM z16 pai_ext PMU released with
>> commit c432fefe8e62 ("s390/pai: Add support for PAI Extension 1 NNPA counters")
>>
>> The document SA22-7832-13 "z/Architecture Principles of Operation",
>> published May, 2022, contains the description of the
>> Processor Activity Instrumentation Facility and the NNPA counter
>> set., See Pages 5-113 to 5-116.
>>
>> Signed-off-by: Thomas Richter <tmricht@linux.ibm.com>
>> ---
>>  .../pmu-events/arch/s390/cf_z16/pai_ext.json  | 198 ++++++++++++++++++
>>  tools/perf/pmu-events/jevents.py              |   1 +
>>  2 files changed, 199 insertions(+)
>>  create mode 100644 tools/perf/pmu-events/arch/s390/cf_z16/pai_ext.json
>>
>> diff --git a/tools/perf/pmu-events/arch/s390/cf_z16/pai_ext.json b/tools/perf/pmu-events/arch/s390/cf_z16/pai_ext.json
>> new file mode 100644
>> index 000000000000..8bee481f05d5
>> --- /dev/null
>> +++ b/tools/perf/pmu-events/arch/s390/cf_z16/pai_ext.json
>> @@ -0,0 +1,198 @@
>> +[
>> +	{
>> +		"Unit": "PAI-EXT",
>> +		"EventCode": "6144",
>> +		"EventName": "NNPA_ALL",
>> +		"BriefDescription": "NNPA ALL",
>> +		"PublicDescription": "Sum of all non zero NNPA counters"
>> +	},
> 
> Since the Brief description mentions NNPA, shouldn't the Public
> Description expand on this "NNPA" acronym?, something like:
> 
> Oops, can't expand on that since there isn't a link to that SA22-7832-13
> document.
> 
> Googling for it...
> 
> https://www-40.ibm.com/servers/resourcelink/svc03100.nsf/pages/zResourceLinkUrl?OpenDocument&url=http://www.ibm.com/servers/resourcelink/lib03010.nsf/0/B9DE5F05A9D57819852571C500428F9A/$file/SA22-7832-13.pdf
> 
> Ok, requires registration.
> 
> I wonder what is the value of these descriptions then :-\
> 
> I miss Ingo jumping into these discussions :-)
> 
> - Arnaldo

I added Andreas Krebbel to the discussion, he knows more than I on this counters.

NNPA stands for Neural Networks Processing Assist. This is a new feature in 
the IBM z16. Here is a quote from Document SG2489-51 IBM z16 (3931) Technical Guide:

<START-OF-QUOTE>
  "The new IBM z16 microprocessor chip, also called the IBM Telum processor, integrates a
   new AI accelerator. This innovation brings incredible value to applications and workloads that
   are running on IBM Z platform.
   Customers can benefit from the integrated AI accelerator by adding AI operations that are
   used to perform fraud prevention and fraud detection, customer behavior predictions, and
   supply chain operations. All of these operations are done in real time and fully integrated in
   transactional workloads. As a result, valuable insights are gained from their data instantly.

   ...
   The AI accelerator is driven by the new Neural Networks Processing Assist (NNPA)
   instruction.
   NNPA is a new nonprivileged Complex Instruction Set Computer (CISC) memory-to-memory
   instruction that operates on tensor objects that are in user program’s memory. AI functions
   and macros are abstracted by NNPA."
<END-OF-QUOTE>

This intension of this patch is to give a small hint on what these NNPA counters are
supposed to count and operate on. A full explanation is given in the document
SA22-7832-13 "z/Architecture Principles of Operation", Chapter 26, pp 26-1 to 26-115.

If you think this small description is not worth it, then we can drop the patch.

Thanks for you help and directions.
  
Arnaldo Carvalho de Melo Nov. 15, 2022, 1:10 p.m. UTC | #3
Em Tue, Nov 15, 2022 at 09:58:22AM +0100, Thomas Richter escreveu:
> On 11/14/22 17:06, Arnaldo Carvalho de Melo wrote:
> > Em Fri, Nov 11, 2022 at 02:54:02PM +0100, Thomas Richter escreveu:
> >> Add the event description for the IBM z16 pai_ext PMU released with
> >> commit c432fefe8e62 ("s390/pai: Add support for PAI Extension 1 NNPA counters")

> >> The document SA22-7832-13 "z/Architecture Principles of Operation",
> >> published May, 2022, contains the description of the Processor
> >> Activity Instrumentation Facility and the NNPA counter set., See
> >> Pages 5-113 to 5-116.

> >> Signed-off-by: Thomas Richter <tmricht@linux.ibm.com>

> >> --- /dev/null
> >> +++ b/tools/perf/pmu-events/arch/s390/cf_z16/pai_ext.json
> >> @@ -0,0 +1,198 @@
> >> +[
> >> +	{
> >> +		"Unit": "PAI-EXT",
> >> +		"EventCode": "6144",
> >> +		"EventName": "NNPA_ALL",
> >> +		"BriefDescription": "NNPA ALL",
> >> +		"PublicDescription": "Sum of all non zero NNPA counters"
> >> +	},

> > Since the Brief description mentions NNPA, shouldn't the Public
> > Description expand on this "NNPA" acronym?, something like:

> > Oops, can't expand on that since there isn't a link to that SA22-7832-13
> > document.

> > Googling for it...

> > https://www-40.ibm.com/servers/resourcelink/svc03100.nsf/pages/zResourceLinkUrl?OpenDocument&url=http://www.ibm.com/servers/resourcelink/lib03010.nsf/0/B9DE5F05A9D57819852571C500428F9A/$file/SA22-7832-13.pdf

> > Ok, requires registration.

> > I wonder what is the value of these descriptions then :-\

> > I miss Ingo jumping into these discussions :-)
 
> I added Andreas Krebbel to the discussion, he knows more than I on this counters.
 
> NNPA stands for Neural Networks Processing Assist. This is a new feature in 
> the IBM z16. Here is a quote from Document SG2489-51 IBM z16 (3931) Technical Guide:
 
> <START-OF-QUOTE>
>   "The new IBM z16 microprocessor chip, also called the IBM Telum processor, integrates a
>    new AI accelerator. This innovation brings incredible value to applications and workloads that
>    are running on IBM Z platform.
>    Customers can benefit from the integrated AI accelerator by adding AI operations that are
>    used to perform fraud prevention and fraud detection, customer behavior predictions, and
>    supply chain operations. All of these operations are done in real time and fully integrated in
>    transactional workloads. As a result, valuable insights are gained from their data instantly.
> 
>    ...
>    The AI accelerator is driven by the new Neural Networks Processing Assist (NNPA)
>    instruction.
>    NNPA is a new nonprivileged Complex Instruction Set Computer (CISC) memory-to-memory
>    instruction that operates on tensor objects that are in user program’s memory. AI functions
>    and macros are abstracted by NNPA."
> <END-OF-QUOTE>
> 
> This intension of this patch is to give a small hint on what these NNPA counters are
> supposed to count and operate on. A full explanation is given in the document
> SA22-7832-13 "z/Architecture Principles of Operation", Chapter 26, pp 26-1 to 26-115.
> 
> If you think this small description is not worth it, then we can drop the patch.

So perhaps:

+	{
+		"Unit": "PAI-EXT",
+		"EventCode": "6144",
+		"EventName": "NNPA_ALL",
+		"BriefDescription": "NNPA ALL",
+		"PublicDescription": "Sum of all non zero NNPA (Neural Networks Processing Assist) counters"
+	},

?

- Arnaldo
  
Thomas Richter Nov. 15, 2022, 4:34 p.m. UTC | #4
On 11/15/22 14:10, Arnaldo Carvalho de Melo wrote:
> Em Tue, Nov 15, 2022 at 09:58:22AM +0100, Thomas Richter escreveu:
>> On 11/14/22 17:06, Arnaldo Carvalho de Melo wrote:
>>> Em Fri, Nov 11, 2022 at 02:54:02PM +0100, Thomas Richter escreveu:
>>>> Add the event description for the IBM z16 pai_ext PMU released with
>>>> commit c432fefe8e62 ("s390/pai: Add support for PAI Extension 1 NNPA counters")
> 
>>>> The document SA22-7832-13 "z/Architecture Principles of Operation",
>>>> published May, 2022, contains the description of the Processor
>>>> Activity Instrumentation Facility and the NNPA counter set., See
>>>> Pages 5-113 to 5-116.
> 
>>>> Signed-off-by: Thomas Richter <tmricht@linux.ibm.com>
> 
>>>> --- /dev/null
>>>> +++ b/tools/perf/pmu-events/arch/s390/cf_z16/pai_ext.json
>>>> @@ -0,0 +1,198 @@
>>>> +[
>>>> +	{
>>>> +		"Unit": "PAI-EXT",
>>>> +		"EventCode": "6144",
>>>> +		"EventName": "NNPA_ALL",
>>>> +		"BriefDescription": "NNPA ALL",
>>>> +		"PublicDescription": "Sum of all non zero NNPA counters"
>>>> +	},
> 
>>> Since the Brief description mentions NNPA, shouldn't the Public
>>> Description expand on this "NNPA" acronym?, something like:
> 
>>> Oops, can't expand on that since there isn't a link to that SA22-7832-13
>>> document.
> 
>>> Googling for it...
> 
>>> https://www-40.ibm.com/servers/resourcelink/svc03100.nsf/pages/zResourceLinkUrl?OpenDocument&url=http://www.ibm.com/servers/resourcelink/lib03010.nsf/0/B9DE5F05A9D57819852571C500428F9A/$file/SA22-7832-13.pdf
> 
>>> Ok, requires registration.
> 
>>> I wonder what is the value of these descriptions then :-\
> 
>>> I miss Ingo jumping into these discussions :-)
>  
>> I added Andreas Krebbel to the discussion, he knows more than I on this counters.
>  
>> NNPA stands for Neural Networks Processing Assist. This is a new feature in 
>> the IBM z16. Here is a quote from Document SG2489-51 IBM z16 (3931) Technical Guide:
>  
>> <START-OF-QUOTE>
>>   "The new IBM z16 microprocessor chip, also called the IBM Telum processor, integrates a
>>    new AI accelerator. This innovation brings incredible value to applications and workloads that
>>    are running on IBM Z platform.
>>    Customers can benefit from the integrated AI accelerator by adding AI operations that are
>>    used to perform fraud prevention and fraud detection, customer behavior predictions, and
>>    supply chain operations. All of these operations are done in real time and fully integrated in
>>    transactional workloads. As a result, valuable insights are gained from their data instantly.
>>
>>    ...
>>    The AI accelerator is driven by the new Neural Networks Processing Assist (NNPA)
>>    instruction.
>>    NNPA is a new nonprivileged Complex Instruction Set Computer (CISC) memory-to-memory
>>    instruction that operates on tensor objects that are in user program’s memory. AI functions
>>    and macros are abstracted by NNPA."
>> <END-OF-QUOTE>
>>
>> This intension of this patch is to give a small hint on what these NNPA counters are
>> supposed to count and operate on. A full explanation is given in the document
>> SA22-7832-13 "z/Architecture Principles of Operation", Chapter 26, pp 26-1 to 26-115.
>>
>> If you think this small description is not worth it, then we can drop the patch.
> 
> So perhaps:
> 
> +	{
> +		"Unit": "PAI-EXT",
> +		"EventCode": "6144",
> +		"EventName": "NNPA_ALL",
> +		"BriefDescription": "NNPA ALL",
> +		"PublicDescription": "Sum of all non zero NNPA (Neural Networks Processing Assist) counters"
> +	},
> 
> ?
> 
> - Arnaldo

Ahhh, now I get it. 

Yes I will provide a patch with the first mention of NNPA have 
the abbreviation explained, as you pointed out.

Thanks.
  

Patch

diff --git a/tools/perf/pmu-events/arch/s390/cf_z16/pai_ext.json b/tools/perf/pmu-events/arch/s390/cf_z16/pai_ext.json
new file mode 100644
index 000000000000..8bee481f05d5
--- /dev/null
+++ b/tools/perf/pmu-events/arch/s390/cf_z16/pai_ext.json
@@ -0,0 +1,198 @@ 
+[
+	{
+		"Unit": "PAI-EXT",
+		"EventCode": "6144",
+		"EventName": "NNPA_ALL",
+		"BriefDescription": "NNPA ALL",
+		"PublicDescription": "Sum of all non zero NNPA counters"
+	},
+	{
+		"Unit": "PAI-EXT",
+		"EventCode": "6145",
+		"EventName": "NNPA_ADD",
+		"BriefDescription": "NNPA ADD",
+		"PublicDescription": "NNPA ADD function ending with CC=0"
+	},
+	{
+		"Unit": "PAI-EXT",
+		"EventCode": "6146",
+		"EventName": "NNPA_SUB",
+		"BriefDescription": "NNPA SUB",
+		"PublicDescription": "NNPA SUB function ending with CC=0"
+	},
+	{
+		"Unit": "PAI-EXT",
+		"EventCode": "6147",
+		"EventName": "NNPA_MUL",
+		"BriefDescription": "NNPA MUL",
+		"PublicDescription": "NNPA MUL function ending with CC=0"
+	},
+	{
+		"Unit": "PAI-EXT",
+		"EventCode": "6148",
+		"EventName": "NNPA_DIV",
+		"BriefDescription": "NNPA DIV",
+		"PublicDescription": "NNPA DIV function ending with CC=0"
+	},
+	{
+		"Unit": "PAI-EXT",
+		"EventCode": "6149",
+		"EventName": "NNPA_MIN",
+		"BriefDescription": "NNPA MIN",
+		"PublicDescription": "NNPA MIN function ending with CC=0"
+	},
+	{
+		"Unit": "PAI-EXT",
+		"EventCode": "6150",
+		"EventName": "NNPA_MAX",
+		"BriefDescription": "NNPA MAX",
+		"PublicDescription": "NNPA-MAX function ending with CC=0"
+	},
+	{
+		"Unit": "PAI-EXT",
+		"EventCode": "6151",
+		"EventName": "NNPA_LOG",
+		"BriefDescription": "NNPA LOG",
+		"PublicDescription": "NNPA-LOG function ending with CC=0"
+	},
+	{
+		"Unit": "PAI-EXT",
+		"EventCode": "6152",
+		"EventName": "NNPA_EXP",
+		"BriefDescription": "NNPA EXP",
+		"PublicDescription": "NNPA-EXP function ending with CC=0"
+	},
+	{
+		"Unit": "PAI-EXT",
+		"EventCode": "6153",
+		"EventName": "NNPA_IBM_RESERVED_9",
+		"BriefDescription": "Reserved for IBM use",
+		"PublicDescription": "Reserved for IBM use"
+	},
+	{
+		"Unit": "PAI-EXT",
+		"EventCode": "6154",
+		"EventName": "NNPA_RELU",
+		"BriefDescription": "NNPA RELU",
+		"PublicDescription": "NNPA-RELU function ending with CC=0"
+	},
+	{
+		"Unit": "PAI-EXT",
+		"EventCode": "6155",
+		"EventName": "NNPA_TANH",
+		"BriefDescription": "NNPA TANH",
+		"PublicDescription": "NNPA-TANH function ending with CC=0"
+	},
+	{
+		"Unit": "PAI-EXT",
+		"EventCode": "6156",
+		"EventName": "NNPA_SIGMOID",
+		"BriefDescription": "NNPA SIGMOID",
+		"PublicDescription": "NNPA-SIGMOID function ending with CC=0"
+	},
+	{
+		"Unit": "PAI-EXT",
+		"EventCode": "6157",
+		"EventName": "NNPA_SOFTMAX",
+		"BriefDescription": "NNPA SOFTMAX",
+		"PublicDescription": "NNPA-SOFTMAX function ending with CC=0"
+	},
+	{
+		"Unit": "PAI-EXT",
+		"EventCode": "6158",
+		"EventName": "NNPA_BATCHNORM",
+		"BriefDescription": "NNPA BATCHNORM",
+		"PublicDescription": "NNPA-BATCHNORM function ending with CC=0"
+	},
+	{
+		"Unit": "PAI-EXT",
+		"EventCode": "6159",
+		"EventName": "NNPA_MAXPOOL2D",
+		"BriefDescription": "NNPA MAXPOOL2D",
+		"PublicDescription": "NNPA-MAXPOOL2D function ending with CC=0"
+	},
+	{
+		"Unit": "PAI-EXT",
+		"EventCode": "6160",
+		"EventName": "NNPA_AVGPOOL2D",
+		"BriefDescription": "NNPA AVGPOOL2D",
+		"PublicDescription": "NNPA-AVGPOOL2D function ending with CC=0"
+	},
+	{
+		"Unit": "PAI-EXT",
+		"EventCode": "6161",
+		"EventName": "NNPA_LSTMACT",
+		"BriefDescription": "NNPA LSTMACT",
+		"PublicDescription": "NNPA-LSTMACT function ending with CC=0"
+	},
+	{
+		"Unit": "PAI-EXT",
+		"EventCode": "6162",
+		"EventName": "NNPA_GRUACT",
+		"BriefDescription": "NNPA GRUACT",
+		"PublicDescription": "NNPA-GRUACT function ending with CC=0"
+	},
+	{
+		"Unit": "PAI-EXT",
+		"EventCode": "6163",
+		"EventName": "NNPA_CONVOLUTION",
+		"BriefDescription": "NNPA CONVOLUTION",
+		"PublicDescription": "NNPA-CONVOLUTION function ending with CC=0"
+	},
+	{
+		"Unit": "PAI-EXT",
+		"EventCode": "6164",
+		"EventName": "NNPA_MATMUL_OP",
+		"BriefDescription": "NNPA MATMUL OP",
+		"PublicDescription": "NNPA-MATMUL-OP function ending with CC=0"
+	},
+	{
+		"Unit": "PAI-EXT",
+		"EventCode": "6165",
+		"EventName": "NNPA_MATMUL_OP_BCAST23",
+		"BriefDescription": "NNPA NNPA-MATMUL_OP_BCAST23",
+		"PublicDescription": "NNPA-MATMUL-OP-BCAST23 function ending with CC=0"
+	},
+	{
+		"Unit": "PAI-EXT",
+		"EventCode": "6166",
+		"EventName": "NNPA_SMALLBATCH",
+		"BriefDescription": "NNPA SMALLBATCH",
+		"PublicDescription": "NNPA function with conditions as described in Common Operation"
+	},
+	{
+		"Unit": "PAI-EXT",
+		"EventCode": "6167",
+		"EventName": "NNPA_LARGEDIM",
+		"BriefDescription": "NNPA LARGEDIM",
+		"PublicDescription": "NNPA function with conditions as described in Common Operation"
+	},
+	{
+		"Unit": "PAI-EXT",
+		"EventCode": "6168",
+		"EventName": "NNPA_SMALLTENSOR",
+		"BriefDescription": "NNPA SMALLTENSOR",
+		"PublicDescription": "NNPA function with conditions as described in Common Operation"
+	},
+	{
+		"Unit": "PAI-EXT",
+		"EventCode": "6169",
+		"EventName": "NNPA_1MFRAME",
+		"BriefDescription": "NNPA 1MFRAME",
+		"PublicDescription": "NNPA function with conditions as described in Common Operation"
+	},
+	{
+		"Unit": "PAI-EXT",
+		"EventCode": "6170",
+		"EventName": "NNPA_2GFRAME",
+		"BriefDescription": "NNPA 2GFRAME",
+		"PublicDescription": "NNPA function with conditions as described in Common Operation"
+	},
+	{
+		"Unit": "PAI-EXT",
+		"EventCode": "6171",
+		"EventName": "NNPA_ACCESSEXCEPT",
+		"BriefDescription": "NNPA ACCESSEXCEPT",
+		"PublicDescription": "NNPA function with conditions as described in Common Operation"
+ 	}
+]
diff --git a/tools/perf/pmu-events/jevents.py b/tools/perf/pmu-events/jevents.py
index 0daa3e007528..da630aab948b 100755
--- a/tools/perf/pmu-events/jevents.py
+++ b/tools/perf/pmu-events/jevents.py
@@ -225,6 +225,7 @@  class JsonEvent:
           'CPU-M-CF': 'cpum_cf',
           'CPU-M-SF': 'cpum_sf',
           'PAI-CRYPTO' : 'pai_crypto',
+          'PAI-EXT' : 'pai_ext',
           'UPI LL': 'uncore_upi',
           'hisi_sicl,cpa': 'hisi_sicl,cpa',
           'hisi_sccl,ddrc': 'hisi_sccl,ddrc',