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