I wanted to count integer vector instructions on SandyBridge, but from what I can find out from Intel docs and what PAPI reports as available events, this is not possible? Only floating point SSE and AVX events can be counted.
Anyone already investigated this and come to the same (or different) conclusion? The processor I tried on was Intel E5-2670.
Nothing like what I have on my laptop (IntelCore2 T9400) appears to be available:
- Code: Select all
SIMD_UOP_TYPE_EXEC |
| SIMD packed multiply micro-ops executed |
| :MUL |
| SIMD packed multiply micro-ops executed |
| :SHIFT |
| SIMD packed shift micro-ops executed |
| :PACK |
| SIMD pack micro-ops executed |
| :UNPACK |
| SIMD unpack micro-ops executed |
| :LOGICAL |
| SIMD packed logical micro-ops executed |
| :ARITHMETIC |
| SIMD packed arithmetic micro-ops executed
| SIMD_INST_RETIRED |
| Retired Streaming SIMD Extensions (SSE) packed-single instructions|
| |
| :PACKED_SINGLE |
| Retired Streaming SIMD Extensions (SSE) packed-single instructions|
| |
| :SCALAR_SINGLE |
| Retired Streaming SIMD Extensions (SSE) scalar-single instructions|
| |
| :PACKED_DOUBLE |
| Retired Streaming SIMD Extensions 2 (SSE2) packed-double instructi|
| ons |
| :SCALAR_DOUBLE |
| Retired Streaming SIMD Extensions 2 (SSE2) scalar-double instructi|
| ons |
| :VECTOR |
| Retired Streaming SIMD Extensions 2 (SSE2) vector integer instruct|
| ions |
| :ANY |
| Retired Streaming SIMD instructions (Precise Event) |
