Intel(R) Architecture Code Analyzer Version -  v3.0-28-g1ba2cbb build date: 2017-10-23;16:42:45
Analyzed File -  gromacs-avx512-sp.o
Binary Format - 64Bit
Architecture  -  SKX
Analysis Type - Throughput

Throughput Analysis Report
--------------------------
Block Throughput: 25.21 Cycles       Throughput Bottleneck: Backend
Loop Count:  22
Port Binding In Cycles Per Iteration:
--------------------------------------------------------------------------------------------------
|  Port  |   0   -  DV   |   1   |   2   -  D    |   3   -  D    |   4   |   5   |   6   |   7   |
--------------------------------------------------------------------------------------------------
| Cycles | 21.0     0.0  |  2.0  |  2.0     2.0  |  2.0     2.0  |  0.0  | 21.0  |  2.0  |  0.0  |
--------------------------------------------------------------------------------------------------

DV - Divider pipe (on port 0)
D - Data fetch pipe (on ports 2 and 3)
F - Macro Fusion with the previous instruction occurred
* - instruction micro-ops not bound to a port
^ - Micro Fusion occurred
# - ESP Tracking sync uop was issued
@ - SSE instruction followed an AVX256/AVX512 instruction, dozens of cycles penalty is expected
X - instruction not supported, was not accounted in Analysis

| Num Of   |                    Ports pressure in cycles                         |      |
|  Uops    |  0  - DV    |  1   |  2  -  D    |  3  -  D    |  4   |  5   |  6   |  7   |
-----------------------------------------------------------------------------------------
|   1      |             |      | 1.0     1.0 |             |      |      |      |      | movsxd rdi, dword ptr [rsi+rdx*4]
|   1      |             | 1.0  |             |             |      |      |      |      | lea rdi, ptr [rdi+rdi*2]
|   1      |             |      |             |             |      |      | 1.0  |      | shl rdi, 0x5
|   1      |             |      |             | 1.0     1.0 |      |      |      |      | vmovupd zmm16, zmmword ptr [rcx+rdi*1]
|   2      |             |      | 1.0     1.0 |             |      | 1.0  |      |      | vinsertf64x4 zmm17, zmm16, ymmword ptr [rcx+rdi*1], 0x1
|   1      |             |      |             | 1.0     1.0 |      |      |      |      | vbroadcastf64x4 zmm18, ymmword ptr [rcx+rdi*1+0x40]
|   1      |             |      |             |             |      | 1.0  |      |      | vshuff64x2 zmm16, zmm16, zmm16, 0xee
|   1      | 1.0         |      |             |             |      |      |      |      | vsubps zmm19, zmm6, zmm17
|   1      | 1.0         |      |             |             |      |      |      |      | vsubps zmm20, zmm10, zmm16
|   1      |             |      |             |             |      | 1.0  |      |      | vsubps zmm21, zmm12, zmm18
|   1      | 1.0         |      |             |             |      |      |      |      | vsubps zmm17, zmm9, zmm17
|   1      |             |      |             |             |      | 1.0  |      |      | vsubps zmm18, zmm14, zmm18
|   1      | 1.0         |      |             |             |      |      |      |      | vsubps zmm16, zmm11, zmm16
|   1      |             |      |             |             |      | 1.0  |      |      | vmulps zmm22, zmm21, zmm21
|   1      | 1.0         |      |             |             |      |      |      |      | vfmadd231ps zmm22, zmm20, zmm20
|   1      |             |      |             |             |      | 1.0  |      |      | vfmadd231ps zmm22, zmm19, zmm19
|   1      | 1.0         |      |             |             |      |      |      |      | vmulps zmm23, zmm18, zmm18
|   1      |             |      |             |             |      | 1.0  |      |      | vfmadd231ps zmm23, zmm16, zmm16
|   1      | 1.0         |      |             |             |      |      |      |      | vfmadd231ps zmm23, zmm17, zmm17
|   3      | 2.0         |      |             |             |      | 1.0  |      |      | vrcp14ps zmm24, zmm22
|   3      | 2.0         |      |             |             |      | 1.0  |      |      | vrcp14ps zmm25, zmm23
|   1      |             |      |             |             |      | 1.0  |      |      | vcmpps k2, zmm22, zmm0, 0x1
|   1      |             |      |             |             |      | 1.0  |      |      | vcmpps k1, zmm23, zmm0, 0x1
|   1      |             |      |             |             |      | 1.0  |      |      | vmulps zmm22, zmm24, zmm29
|   1      | 1.0         |      |             |             |      |      |      |      | vmulps zmm23, zmm24, zmm24
|   1      |             |      |             |             |      | 1.0  |      |      | vmulps zmm26, zmm25, zmm29
|   1      | 1.0         |      |             |             |      |      |      |      | vmulps zmm22, zmm23, zmm22
|   1      |             |      |             |             |      | 1.0  |      |      | vmulps zmm23, zmm25, zmm25
|   1      | 1.0         |      |             |             |      |      |      |      | vmulps zmm23, zmm23, zmm26
|   1      |             |      |             |             |      | 1.0  |      |      | vaddps zmm26, zmm22, zmm2
|   1      | 1.0         |      |             |             |      |      |      |      | vmulps zmm24, zmm1, zmm24
|   1      |             |      |             |             |      | 1.0  |      |      | vmulps zmm22, zmm24, zmm22
|   1      | 1.0         |      |             |             |      |      |      |      | vmulps zmm22, zmm22, zmm26
|   1      |             |      |             |             |      | 1.0  |      |      | vaddps zmm24, zmm23, zmm2
|   1      | 1.0         |      |             |             |      |      |      |      | vmulps zmm25, zmm1, zmm25
|   1      |             |      |             |             |      | 1.0  |      |      | vmulps zmm23, zmm25, zmm23
|   1      | 1.0         |      |             |             |      |      |      |      | vmulps zmm23, zmm23, zmm24
|   1      |             |      |             |             |      | 1.0  |      |      | vfmadd231ps zmm13{k2}, zmm22, zmm19
|   1      | 1.0         |      |             |             |      |      |      |      | vfmadd231ps zmm8{k2}, zmm22, zmm20
|   1      |             |      |             |             |      | 1.0  |      |      | vfmadd231ps zmm5{k2}, zmm22, zmm21
|   1      | 1.0         |      |             |             |      |      |      |      | vfmadd231ps zmm15{k1}, zmm23, zmm17
|   1      |             |      |             |             |      | 1.0  |      |      | vfmadd231ps zmm7{k1}, zmm23, zmm16
|   1      | 1.0         |      |             |             |      |      |      |      | vfmadd231ps zmm4{k1}, zmm23, zmm18
|   1      |             | 1.0  |             |             |      |      |      |      | inc rdx
|   1*     |             |      |             |             |      |      |      |      | cmp r12, rdx
|   0*F    |             |      |             |             |      |      |      |      | jnz 0xfffffffffffffef6
|   1      |             |      |             |             |      |      | 1.0  |      | jmp 0xfffffffffffffb58
Total Num Of Uops: 51
Analysis Notes:
Backend allocation was stalled due to unavailable allocation resources.