xref: /openbmc/linux/tools/perf/pmu-events/arch/x86/icelakex/floating-point.json (revision 1ac731c529cd4d6adbce134754b51ff7d822b145)
1cdb29a8fSJin Yao[
2cdb29a8fSJin Yao    {
3cdb29a8fSJin Yao        "BriefDescription": "Counts all microcode FP assists.",
4cdb29a8fSJin Yao        "EventCode": "0xc1",
5cdb29a8fSJin Yao        "EventName": "ASSISTS.FP",
6cdb29a8fSJin Yao        "PublicDescription": "Counts all microcode Floating Point assists.",
7cdb29a8fSJin Yao        "SampleAfterValue": "100003",
8cdb29a8fSJin Yao        "UMask": "0x2"
9cdb29a8fSJin Yao    },
10cdb29a8fSJin Yao    {
11cdb29a8fSJin Yao        "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.",
12cdb29a8fSJin Yao        "EventCode": "0xc7",
13cdb29a8fSJin Yao        "EventName": "FP_ARITH_INST_RETIRED.128B_PACKED_DOUBLE",
1409625cffSIan 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.",
15cdb29a8fSJin Yao        "SampleAfterValue": "100003",
16cdb29a8fSJin Yao        "UMask": "0x4"
17cdb29a8fSJin Yao    },
18cdb29a8fSJin Yao    {
19cdb29a8fSJin 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.",
20cdb29a8fSJin Yao        "EventCode": "0xc7",
21cdb29a8fSJin Yao        "EventName": "FP_ARITH_INST_RETIRED.128B_PACKED_SINGLE",
2209625cffSIan 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.",
23cdb29a8fSJin Yao        "SampleAfterValue": "100003",
24cdb29a8fSJin Yao        "UMask": "0x8"
25cdb29a8fSJin Yao    },
26cdb29a8fSJin Yao    {
27cdb29a8fSJin Yao        "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.",
28cdb29a8fSJin Yao        "EventCode": "0xc7",
29cdb29a8fSJin Yao        "EventName": "FP_ARITH_INST_RETIRED.256B_PACKED_DOUBLE",
3009625cffSIan 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.",
31cdb29a8fSJin Yao        "SampleAfterValue": "100003",
32cdb29a8fSJin Yao        "UMask": "0x10"
33cdb29a8fSJin Yao    },
34cdb29a8fSJin Yao    {
35cdb29a8fSJin Yao        "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.",
36cdb29a8fSJin Yao        "EventCode": "0xc7",
37cdb29a8fSJin Yao        "EventName": "FP_ARITH_INST_RETIRED.256B_PACKED_SINGLE",
3809625cffSIan 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.",
39cdb29a8fSJin Yao        "SampleAfterValue": "100003",
40cdb29a8fSJin Yao        "UMask": "0x20"
41cdb29a8fSJin Yao    },
42cdb29a8fSJin Yao    {
43*0ec73817SIan 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*0ec73817SIan Rogers        "EventCode": "0xc7",
45*0ec73817SIan Rogers        "EventName": "FP_ARITH_INST_RETIRED.4_FLOPS",
46*0ec73817SIan 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*0ec73817SIan Rogers        "SampleAfterValue": "100003",
48*0ec73817SIan Rogers        "UMask": "0x18"
49*0ec73817SIan Rogers    },
50*0ec73817SIan Rogers    {
51cdb29a8fSJin Yao        "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.",
52cdb29a8fSJin Yao        "EventCode": "0xc7",
53cdb29a8fSJin Yao        "EventName": "FP_ARITH_INST_RETIRED.512B_PACKED_DOUBLE",
5409625cffSIan 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.",
55cdb29a8fSJin Yao        "SampleAfterValue": "100003",
56cdb29a8fSJin Yao        "UMask": "0x40"
57cdb29a8fSJin Yao    },
58cdb29a8fSJin Yao    {
5909625cffSIan 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.",
60cdb29a8fSJin Yao        "EventCode": "0xc7",
61cdb29a8fSJin Yao        "EventName": "FP_ARITH_INST_RETIRED.512B_PACKED_SINGLE",
6209625cffSIan 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.",
63cdb29a8fSJin Yao        "SampleAfterValue": "100003",
64cdb29a8fSJin Yao        "UMask": "0x80"
6509625cffSIan Rogers    },
6609625cffSIan Rogers    {
67*0ec73817SIan 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*0ec73817SIan Rogers        "EventCode": "0xc7",
69*0ec73817SIan Rogers        "EventName": "FP_ARITH_INST_RETIRED.8_FLOPS",
70*0ec73817SIan 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*0ec73817SIan Rogers        "SampleAfterValue": "100003",
72*0ec73817SIan Rogers        "UMask": "0x60"
73*0ec73817SIan Rogers    },
74*0ec73817SIan Rogers    {
75*0ec73817SIan 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*0ec73817SIan Rogers        "EventCode": "0xc7",
77*0ec73817SIan Rogers        "EventName": "FP_ARITH_INST_RETIRED.SCALAR",
78*0ec73817SIan 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*0ec73817SIan Rogers        "SampleAfterValue": "1000003",
80*0ec73817SIan Rogers        "UMask": "0x3"
81*0ec73817SIan Rogers    },
82*0ec73817SIan Rogers    {
8309625cffSIan Rogers        "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.",
8409625cffSIan Rogers        "EventCode": "0xc7",
8509625cffSIan Rogers        "EventName": "FP_ARITH_INST_RETIRED.SCALAR_DOUBLE",
8609625cffSIan 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.",
8709625cffSIan Rogers        "SampleAfterValue": "100003",
8809625cffSIan Rogers        "UMask": "0x1"
8909625cffSIan Rogers    },
9009625cffSIan Rogers    {
9109625cffSIan Rogers        "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.",
9209625cffSIan Rogers        "EventCode": "0xc7",
9309625cffSIan Rogers        "EventName": "FP_ARITH_INST_RETIRED.SCALAR_SINGLE",
9409625cffSIan 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.",
9509625cffSIan Rogers        "SampleAfterValue": "100003",
9609625cffSIan Rogers        "UMask": "0x2"
97*0ec73817SIan Rogers    },
98*0ec73817SIan Rogers    {
99*0ec73817SIan Rogers        "BriefDescription": "Number of any Vector retired FP arithmetic instructions",
100*0ec73817SIan Rogers        "EventCode": "0xc7",
101*0ec73817SIan Rogers        "EventName": "FP_ARITH_INST_RETIRED.VECTOR",
102*0ec73817SIan Rogers        "SampleAfterValue": "1000003",
103*0ec73817SIan Rogers        "UMask": "0xfc"
104cdb29a8fSJin Yao    }
105cdb29a8fSJin Yao]
106