xref: /openbmc/linux/tools/perf/pmu-events/arch/x86/icelake/floating-point.json (revision 1ac731c529cd4d6adbce134754b51ff7d822b145)
1b115df07SHaiyan Song[
2b115df07SHaiyan Song    {
3dd7415ceSIan Rogers        "BriefDescription": "Counts all microcode FP assists.",
4dd7415ceSIan Rogers        "EventCode": "0xc1",
5dd7415ceSIan Rogers        "EventName": "ASSISTS.FP",
6dd7415ceSIan Rogers        "PublicDescription": "Counts all microcode Floating Point assists.",
7dd7415ceSIan Rogers        "SampleAfterValue": "100003",
8dd7415ceSIan Rogers        "UMask": "0x2"
9dd7415ceSIan Rogers    },
10dd7415ceSIan Rogers    {
11dd7415ceSIan Rogers        "BriefDescription": "Counts number of SSE/AVX computational 128-bit packed double precision floating-point instructions retired; some instructions will count twice as noted below.  Each count represents 2 computation operations, one for each element.  Applies to SSE* and AVX* packed double precision floating-point instructions: ADD SUB HADD HSUB SUBADD MUL DIV MIN MAX SQRT DPP FM(N)ADD/SUB.  DPP and FM(N)ADD/SUB instructions count twice as they perform 2 calculations per element.",
12b115df07SHaiyan Song        "EventCode": "0xc7",
13dd7415ceSIan Rogers        "EventName": "FP_ARITH_INST_RETIRED.128B_PACKED_DOUBLE",
14dd7415ceSIan Rogers        "PublicDescription": "Number of SSE/AVX computational 128-bit packed double precision floating-point instructions retired; some instructions will count twice as noted below.  Each count represents 2 computation operations, one for each element.  Applies to SSE* and AVX* packed double precision floating-point instructions: ADD SUB HADD HSUB SUBADD MUL DIV MIN MAX SQRT DPP FM(N)ADD/SUB.  DPP and FM(N)ADD/SUB instructions count twice as they perform 2 calculations per element. The DAZ and FTZ flags in the MXCSR register need to be set when using these events.",
1571fbc431SJin Yao        "SampleAfterValue": "100003",
16dd7415ceSIan Rogers        "UMask": "0x4"
17b115df07SHaiyan Song    },
18b115df07SHaiyan Song    {
1971fbc431SJin Yao        "BriefDescription": "Number of SSE/AVX computational 128-bit packed single precision floating-point instructions retired; some instructions will count twice as noted below.  Each count represents 4 computation operations, one for each element.  Applies to SSE* and AVX* packed single precision floating-point instructions: ADD SUB MUL DIV MIN MAX RCP14 RSQRT14 SQRT DPP FM(N)ADD/SUB.  DPP and FM(N)ADD/SUB instructions count twice as they perform 2 calculations per element.",
2071fbc431SJin Yao        "EventCode": "0xc7",
2171fbc431SJin Yao        "EventName": "FP_ARITH_INST_RETIRED.128B_PACKED_SINGLE",
22dd7415ceSIan Rogers        "PublicDescription": "Number of SSE/AVX computational 128-bit packed single precision floating-point instructions retired; some instructions will count twice as noted below.  Each count represents 4 computation operations, one for each element.  Applies to SSE* and AVX* packed single precision floating-point instructions: ADD SUB HADD HSUB SUBADD MUL DIV MIN MAX SQRT RSQRT RCP DPP FM(N)ADD/SUB.  DPP and FM(N)ADD/SUB instructions count twice as they perform 2 calculations per element. The DAZ and FTZ flags in the MXCSR register need to be set when using these events.",
2371fbc431SJin Yao        "SampleAfterValue": "100003",
2471fbc431SJin Yao        "UMask": "0x8"
2571fbc431SJin Yao    },
2671fbc431SJin Yao    {
27dd7415ceSIan Rogers        "BriefDescription": "Counts number of SSE/AVX computational 256-bit packed double precision floating-point instructions retired; some instructions will count twice as noted below.  Each count represents 4 computation operations, one for each element.  Applies to SSE* and AVX* packed double precision floating-point instructions: ADD SUB HADD HSUB SUBADD MUL DIV MIN MAX SQRT FM(N)ADD/SUB.  FM(N)ADD/SUB instructions count twice as they perform 2 calculations per element.",
28dd7415ceSIan Rogers        "EventCode": "0xc7",
29dd7415ceSIan Rogers        "EventName": "FP_ARITH_INST_RETIRED.256B_PACKED_DOUBLE",
30dd7415ceSIan Rogers        "PublicDescription": "Number of SSE/AVX computational 256-bit packed double precision floating-point instructions retired; some instructions will count twice as noted below.  Each count represents 4 computation operations, one for each element.  Applies to SSE* and AVX* packed double precision floating-point instructions: ADD SUB HADD HSUB SUBADD MUL DIV MIN MAX SQRT FM(N)ADD/SUB.  FM(N)ADD/SUB instructions count twice as they perform 2 calculations per element. The DAZ and FTZ flags in the MXCSR register need to be set when using these events.",
31dd7415ceSIan Rogers        "SampleAfterValue": "100003",
32dd7415ceSIan Rogers        "UMask": "0x10"
33dd7415ceSIan Rogers    },
34dd7415ceSIan Rogers    {
35dd7415ceSIan Rogers        "BriefDescription": "Counts number of SSE/AVX computational 256-bit packed single precision floating-point instructions retired; some instructions will count twice as noted below.  Each count represents 8 computation operations, one for each element.  Applies to SSE* and AVX* packed single precision floating-point instructions: ADD SUB HADD HSUB SUBADD MUL DIV MIN MAX SQRT RSQRT RCP DPP FM(N)ADD/SUB.  DPP and FM(N)ADD/SUB instructions count twice as they perform 2 calculations per element.",
36dd7415ceSIan Rogers        "EventCode": "0xc7",
37dd7415ceSIan Rogers        "EventName": "FP_ARITH_INST_RETIRED.256B_PACKED_SINGLE",
38dd7415ceSIan Rogers        "PublicDescription": "Number of SSE/AVX computational 256-bit packed single precision floating-point instructions retired; some instructions will count twice as noted below.  Each count represents 8 computation operations, one for each element.  Applies to SSE* and AVX* packed single precision floating-point instructions: ADD SUB HADD HSUB SUBADD MUL DIV MIN MAX SQRT RSQRT RCP DPP FM(N)ADD/SUB.  DPP and FM(N)ADD/SUB instructions count twice as they perform 2 calculations per element. The DAZ and FTZ flags in the MXCSR register need to be set when using these events.",
39dd7415ceSIan Rogers        "SampleAfterValue": "100003",
40dd7415ceSIan Rogers        "UMask": "0x20"
41dd7415ceSIan Rogers    },
42dd7415ceSIan Rogers    {
43*5d486947SIan Rogers        "BriefDescription": "Number of SSE/AVX computational 128-bit packed single and 256-bit packed double precision FP instructions retired; some instructions will count twice as noted below.  Each count represents 2 or/and 4 computation operations, 1 for each element.  Applies to SSE* and AVX* packed single precision and packed double precision FP instructions: ADD SUB HADD HSUB SUBADD MUL DIV MIN MAX RCP14 RSQRT14 SQRT DPP FM(N)ADD/SUB.  DPP and FM(N)ADD/SUB count twice as they perform 2 calculations per element.",
44*5d486947SIan Rogers        "EventCode": "0xc7",
45*5d486947SIan Rogers        "EventName": "FP_ARITH_INST_RETIRED.4_FLOPS",
46*5d486947SIan Rogers        "PublicDescription": "Number of SSE/AVX computational 128-bit packed single precision and 256-bit packed double precision  floating-point instructions retired; some instructions will count twice as noted below.  Each count represents 2 or/and 4 computation operations, one for each element.  Applies to SSE* and AVX* packed single precision floating-point and packed double precision floating-point instructions: ADD SUB HADD HSUB SUBADD MUL DIV MIN MAX RCP14 RSQRT14 SQRT DPP FM(N)ADD/SUB.  DPP and FM(N)ADD/SUB instructions count twice as they perform 2 calculations per element. The DAZ and FTZ flags in the MXCSR register need to be set when using these events.",
47*5d486947SIan Rogers        "SampleAfterValue": "100003",
48*5d486947SIan Rogers        "UMask": "0x18"
49*5d486947SIan Rogers    },
50*5d486947SIan Rogers    {
51dd7415ceSIan Rogers        "BriefDescription": "Counts number of SSE/AVX computational 512-bit packed double precision floating-point instructions retired; some instructions will count twice as noted below.  Each count represents 8 computation operations, one for each element.  Applies to SSE* and AVX* packed double precision floating-point instructions: ADD SUB MUL DIV MIN MAX SQRT RSQRT14 RCP14 FM(N)ADD/SUB. FM(N)ADD/SUB instructions count twice as they perform 2 calculations per element.",
52dd7415ceSIan Rogers        "EventCode": "0xc7",
53dd7415ceSIan Rogers        "EventName": "FP_ARITH_INST_RETIRED.512B_PACKED_DOUBLE",
54dd7415ceSIan Rogers        "PublicDescription": "Number of SSE/AVX computational 512-bit packed double precision floating-point instructions retired; some instructions will count twice as noted below.  Each count represents 8 computation operations, one for each element.  Applies to SSE* and AVX* packed double precision floating-point instructions: ADD SUB MUL DIV MIN MAX SQRT RSQRT14 RCP14 FM(N)ADD/SUB. FM(N)ADD/SUB instructions count twice as they perform 2 calculations per element. The DAZ and FTZ flags in the MXCSR register need to be set when using these events.",
55dd7415ceSIan Rogers        "SampleAfterValue": "100003",
56dd7415ceSIan Rogers        "UMask": "0x40"
57dd7415ceSIan Rogers    },
58dd7415ceSIan Rogers    {
59dd7415ceSIan Rogers        "BriefDescription": "Counts number of SSE/AVX computational 512-bit packed single precision floating-point instructions retired; some instructions will count twice as noted below.  Each count represents 16 computation operations, one for each element.  Applies to SSE* and AVX* packed single precision floating-point instructions: ADD SUB MUL DIV MIN MAX SQRT RSQRT14 RCP14 FM(N)ADD/SUB. FM(N)ADD/SUB instructions count twice as they perform 2 calculations per element.",
6071fbc431SJin Yao        "EventCode": "0xc7",
61b115df07SHaiyan Song        "EventName": "FP_ARITH_INST_RETIRED.512B_PACKED_SINGLE",
62dd7415ceSIan Rogers        "PublicDescription": "Number of SSE/AVX computational 512-bit packed single precision floating-point instructions retired; some instructions will count twice as noted below.  Each count represents 16 computation operations, one for each element.  Applies to SSE* and AVX* packed single precision floating-point instructions: ADD SUB MUL DIV MIN MAX SQRT RSQRT14 RCP14 FM(N)ADD/SUB. FM(N)ADD/SUB instructions count twice as they perform 2 calculations per element. The DAZ and FTZ flags in the MXCSR register need to be set when using these events.",
6371fbc431SJin Yao        "SampleAfterValue": "100003",
6471fbc431SJin Yao        "UMask": "0x80"
6571fbc431SJin Yao    },
6671fbc431SJin Yao    {
67*5d486947SIan Rogers        "BriefDescription": "Number of SSE/AVX computational 256-bit packed single precision and 512-bit packed double precision  FP instructions retired; some instructions will count twice as noted below.  Each count represents 8 computation operations, 1 for each element.  Applies to SSE* and AVX* packed single precision and double precision FP instructions: ADD SUB HADD HSUB SUBADD MUL DIV MIN MAX SQRT RSQRT RSQRT14 RCP RCP14 DPP FM(N)ADD/SUB.  DPP and FM(N)ADD/SUB count twice as they perform 2 calculations per element.",
68*5d486947SIan Rogers        "EventCode": "0xc7",
69*5d486947SIan Rogers        "EventName": "FP_ARITH_INST_RETIRED.8_FLOPS",
70*5d486947SIan Rogers        "PublicDescription": "Number of SSE/AVX computational 256-bit packed single precision and 512-bit packed double precision  floating-point instructions retired; some instructions will count twice as noted below.  Each count represents 8 computation operations, one for each element.  Applies to SSE* and AVX* packed single precision and double precision floating-point instructions: ADD SUB HADD HSUB SUBADD MUL DIV MIN MAX SQRT RSQRT RSQRT14 RCP RCP14 DPP FM(N)ADD/SUB.  DPP and FM(N)ADD/SUB instructions count twice as they perform 2 calculations per element. The DAZ and FTZ flags in the MXCSR register need to be set when using these events.",
71*5d486947SIan Rogers        "SampleAfterValue": "100003",
72*5d486947SIan Rogers        "UMask": "0x60"
73*5d486947SIan Rogers    },
74*5d486947SIan Rogers    {
75*5d486947SIan Rogers        "BriefDescription": "Number of SSE/AVX computational scalar floating-point instructions retired; some instructions will count twice as noted below.  Applies to SSE* and AVX* scalar, double and single precision floating-point: ADD SUB MUL DIV MIN MAX RCP14 RSQRT14 SQRT DPP FM(N)ADD/SUB.  DPP and FM(N)ADD/SUB instructions count twice as they perform multiple calculations per element.",
76*5d486947SIan Rogers        "EventCode": "0xc7",
77*5d486947SIan Rogers        "EventName": "FP_ARITH_INST_RETIRED.SCALAR",
78*5d486947SIan Rogers        "PublicDescription": "Number of SSE/AVX computational scalar single precision and double precision floating-point instructions retired; some instructions will count twice as noted below.  Each count represents 1 computational operation. Applies to SSE* and AVX* scalar single precision floating-point instructions: ADD SUB MUL DIV MIN MAX SQRT RSQRT RCP FM(N)ADD/SUB.  FM(N)ADD/SUB instructions count twice as they perform 2 calculations per element. The DAZ and FTZ flags in the MXCSR register need to be set when using these events.",
79*5d486947SIan Rogers        "SampleAfterValue": "1000003",
80*5d486947SIan Rogers        "UMask": "0x3"
81*5d486947SIan Rogers    },
82*5d486947SIan Rogers    {
8371fbc431SJin Yao        "BriefDescription": "Counts number of SSE/AVX computational scalar double precision floating-point instructions retired; some instructions will count twice as noted below.  Each count represents 1 computational operation. Applies to SSE* and AVX* scalar double precision floating-point instructions: ADD SUB MUL DIV MIN MAX SQRT FM(N)ADD/SUB.  FM(N)ADD/SUB instructions count twice as they perform 2 calculations per element.",
8471fbc431SJin Yao        "EventCode": "0xc7",
8571fbc431SJin Yao        "EventName": "FP_ARITH_INST_RETIRED.SCALAR_DOUBLE",
86dd7415ceSIan Rogers        "PublicDescription": "Number of SSE/AVX computational scalar double precision floating-point instructions retired; some instructions will count twice as noted below.  Each count represents 1 computational operation. Applies to SSE* and AVX* scalar double precision floating-point instructions: ADD SUB MUL DIV MIN MAX SQRT FM(N)ADD/SUB.  FM(N)ADD/SUB instructions count twice as they perform 2 calculations per element. The DAZ and FTZ flags in the MXCSR register need to be set when using these events.",
8771fbc431SJin Yao        "SampleAfterValue": "100003",
8871fbc431SJin Yao        "UMask": "0x1"
8971fbc431SJin Yao    },
9071fbc431SJin Yao    {
9171fbc431SJin Yao        "BriefDescription": "Counts number of SSE/AVX computational scalar single precision floating-point instructions retired; some instructions will count twice as noted below.  Each count represents 1 computational operation. Applies to SSE* and AVX* scalar single precision floating-point instructions: ADD SUB MUL DIV MIN MAX SQRT RSQRT RCP FM(N)ADD/SUB.  FM(N)ADD/SUB instructions count twice as they perform 2 calculations per element.",
9271fbc431SJin Yao        "EventCode": "0xc7",
9371fbc431SJin Yao        "EventName": "FP_ARITH_INST_RETIRED.SCALAR_SINGLE",
94dd7415ceSIan Rogers        "PublicDescription": "Number of SSE/AVX computational scalar single precision floating-point instructions retired; some instructions will count twice as noted below.  Each count represents 1 computational operation. Applies to SSE* and AVX* scalar single precision floating-point instructions: ADD SUB MUL DIV MIN MAX SQRT RSQRT RCP FM(N)ADD/SUB.  FM(N)ADD/SUB instructions count twice as they perform 2 calculations per element. The DAZ and FTZ flags in the MXCSR register need to be set when using these events.",
9571fbc431SJin Yao        "SampleAfterValue": "100003",
9671fbc431SJin Yao        "UMask": "0x2"
97*5d486947SIan Rogers    },
98*5d486947SIan Rogers    {
99*5d486947SIan Rogers        "BriefDescription": "Number of any Vector retired FP arithmetic instructions",
100*5d486947SIan Rogers        "EventCode": "0xc7",
101*5d486947SIan Rogers        "EventName": "FP_ARITH_INST_RETIRED.VECTOR",
102*5d486947SIan Rogers        "SampleAfterValue": "1000003",
103*5d486947SIan Rogers        "UMask": "0xfc"
104b115df07SHaiyan Song    }
105b115df07SHaiyan Song]
106