14babba55SJin Yao[ 24babba55SJin Yao { 34babba55SJin Yao "BriefDescription": "Counts all microcode FP assists.", 44babba55SJin Yao "EventCode": "0xc1", 54babba55SJin Yao "EventName": "ASSISTS.FP", 64babba55SJin Yao "PublicDescription": "Counts all microcode Floating Point assists.", 74babba55SJin Yao "SampleAfterValue": "100003", 84babba55SJin Yao "UMask": "0x2" 94babba55SJin Yao }, 104babba55SJin Yao { 114babba55SJin 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.", 124babba55SJin Yao "EventCode": "0xc7", 134babba55SJin Yao "EventName": "FP_ARITH_INST_RETIRED.128B_PACKED_DOUBLE", 1443d54e94SIan 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.", 154babba55SJin Yao "SampleAfterValue": "100003", 164babba55SJin Yao "UMask": "0x4" 174babba55SJin Yao }, 184babba55SJin Yao { 194babba55SJin 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.", 204babba55SJin Yao "EventCode": "0xc7", 214babba55SJin Yao "EventName": "FP_ARITH_INST_RETIRED.128B_PACKED_SINGLE", 2243d54e94SIan 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.", 234babba55SJin Yao "SampleAfterValue": "100003", 244babba55SJin Yao "UMask": "0x8" 254babba55SJin Yao }, 264babba55SJin Yao { 274babba55SJin 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.", 284babba55SJin Yao "EventCode": "0xc7", 294babba55SJin Yao "EventName": "FP_ARITH_INST_RETIRED.256B_PACKED_DOUBLE", 3043d54e94SIan 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.", 314babba55SJin Yao "SampleAfterValue": "100003", 324babba55SJin Yao "UMask": "0x10" 334babba55SJin Yao }, 344babba55SJin Yao { 354babba55SJin 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.", 364babba55SJin Yao "EventCode": "0xc7", 374babba55SJin Yao "EventName": "FP_ARITH_INST_RETIRED.256B_PACKED_SINGLE", 3843d54e94SIan 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.", 394babba55SJin Yao "SampleAfterValue": "100003", 404babba55SJin Yao "UMask": "0x20" 414babba55SJin Yao }, 424babba55SJin Yao { 43*de44486fSIan 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*de44486fSIan Rogers "EventCode": "0xc7", 45*de44486fSIan Rogers "EventName": "FP_ARITH_INST_RETIRED.4_FLOPS", 46*de44486fSIan 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*de44486fSIan Rogers "SampleAfterValue": "100003", 48*de44486fSIan Rogers "UMask": "0x18" 49*de44486fSIan Rogers }, 50*de44486fSIan Rogers { 514babba55SJin 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.", 524babba55SJin Yao "EventCode": "0xc7", 534babba55SJin Yao "EventName": "FP_ARITH_INST_RETIRED.512B_PACKED_DOUBLE", 5443d54e94SIan 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.", 554babba55SJin Yao "SampleAfterValue": "100003", 564babba55SJin Yao "UMask": "0x40" 574babba55SJin Yao }, 584babba55SJin Yao { 5943d54e94SIan 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.", 604babba55SJin Yao "EventCode": "0xc7", 614babba55SJin Yao "EventName": "FP_ARITH_INST_RETIRED.512B_PACKED_SINGLE", 6243d54e94SIan 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.", 634babba55SJin Yao "SampleAfterValue": "100003", 644babba55SJin Yao "UMask": "0x80" 654babba55SJin Yao }, 664babba55SJin Yao { 67*de44486fSIan 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*de44486fSIan Rogers "EventCode": "0xc7", 69*de44486fSIan Rogers "EventName": "FP_ARITH_INST_RETIRED.8_FLOPS", 70*de44486fSIan 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*de44486fSIan Rogers "SampleAfterValue": "100003", 72*de44486fSIan Rogers "UMask": "0x60" 73*de44486fSIan Rogers }, 74*de44486fSIan Rogers { 75*de44486fSIan 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 RANGE SQRT DPP FM(N)ADD/SUB. DPP and FM(N)ADD/SUB instructions count twice as they perform multiple calculations per element.", 76*de44486fSIan Rogers "EventCode": "0xc7", 77*de44486fSIan Rogers "EventName": "FP_ARITH_INST_RETIRED.SCALAR", 78*de44486fSIan 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*de44486fSIan Rogers "SampleAfterValue": "1000003", 80*de44486fSIan Rogers "UMask": "0x3" 81*de44486fSIan Rogers }, 82*de44486fSIan Rogers { 834babba55SJin 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.", 844babba55SJin Yao "EventCode": "0xc7", 854babba55SJin Yao "EventName": "FP_ARITH_INST_RETIRED.SCALAR_DOUBLE", 8643d54e94SIan 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.", 874babba55SJin Yao "SampleAfterValue": "100003", 884babba55SJin Yao "UMask": "0x1" 894babba55SJin Yao }, 904babba55SJin Yao { 914babba55SJin 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.", 924babba55SJin Yao "EventCode": "0xc7", 934babba55SJin Yao "EventName": "FP_ARITH_INST_RETIRED.SCALAR_SINGLE", 9443d54e94SIan 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.", 954babba55SJin Yao "SampleAfterValue": "100003", 964babba55SJin Yao "UMask": "0x2" 97*de44486fSIan Rogers }, 98*de44486fSIan Rogers { 99*de44486fSIan Rogers "BriefDescription": "Number of any Vector retired FP arithmetic instructions", 100*de44486fSIan Rogers "EventCode": "0xc7", 101*de44486fSIan Rogers "EventName": "FP_ARITH_INST_RETIRED.VECTOR", 102*de44486fSIan Rogers "SampleAfterValue": "1000003", 103*de44486fSIan Rogers "UMask": "0xfc" 1044babba55SJin Yao } 1054babba55SJin Yao] 106