diff --git a/static_analysis/rafael/analyses/gromacs-icx-avx512-dp-clx.out b/static_analysis/rafael/analyses/gromacs-icx-avx512-dp-clx.out new file mode 100644 index 0000000..f439c50 --- /dev/null +++ b/static_analysis/rafael/analyses/gromacs-icx-avx512-dp-clx.out @@ -0,0 +1,107 @@ +Throughput (in cycles per iteration): 43.00 +Bottleneck: unknown + +The following throughputs could be achieved if the given property were the only bottleneck: + + - DSB: 15.83 + - Issue: 23.75 + - Ports: 40.00 + - Dependencies: 4.00 + +M - Macro-fused with previous instruction + +┌───────────────────────┬────────┬───────┬───────────────────────────────────────────────────────────────────────┬───────┐ +│ MITE MS DSB LSD │ Issued │ Exec. │ Port 0 Port 1 Port 2 Port 3 Port 4 Port 5 Port 6 Port 7 │ Notes │ +├───────────────────────┼────────┼───────┼───────────────────────────────────────────────────────────────────────┼───────┤ +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/MOVSXD_R64_M32.htmlmovsxd rax, dword ptr [rdx+rcx*4]]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/LEA_B_IS_R64.htmllea rax, ptr [rax+rax*2]]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/SHL_R64_I8.htmlshl rax, 0x6]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMOVAPD_ZMM_M512.htmlvmovapd zmm28, zmmword ptr [rdi+rax*1]]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMOVAPD_ZMM_M512.htmlvmovapd zmm29, zmmword ptr [rdi+rax*1+0x40]]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMOVAPD_ZMM_M512.htmlvmovapd zmm30, zmmword ptr [rdi+rax*1+0x80]]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMOVUPD_ZMM_M512.htmlvmovupd zmm3, zmmword ptr [rsp+0x40]]8;; +│ 1 │ 1 │ 1 │ 0.4 0.6 │ │ ]8;;https://www.uops.info/html-instr/VSUBPD_ZMM_ZMM_ZMM.htmlvsubpd zmm14, zmm3, zmm28]8;; +│ 1 │ 1 │ 1 │ 0.6 0.4 │ │ ]8;;https://www.uops.info/html-instr/VSUBPD_ZMM_ZMM_ZMM.htmlvsubpd zmm12, zmm26, zmm29]8;; +│ 1 │ 1 │ 1 │ 0.4 0.6 │ │ ]8;;https://www.uops.info/html-instr/VSUBPD_ZMM_ZMM_ZMM.htmlvsubpd zmm31, zmm25, zmm30]8;; +│ 1 │ 1 │ 1 │ 0.4 0.6 │ │ ]8;;https://www.uops.info/html-instr/VSUBPD_ZMM_ZMM_ZMM.htmlvsubpd zmm3, zmm23, zmm28]8;; +│ 1 │ 1 │ 1 │ 0.4 0.6 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm15, zmm31, zmm31]8;; +│ 1 │ 1 │ 1 │ 0.4 0.6 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PD_ZMM_ZMM_ZMM.htmlvfmadd231pd zmm15, zmm12, zmm12]8;; +│ 1 │ 1 │ 1 │ 0.4 0.6 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PD_ZMM_ZMM_ZMM.htmlvfmadd231pd zmm15, zmm14, zmm14]8;; +│ 3 │ 3 │ 3 │ 2.6 0.4 │ │ ]8;;https://www.uops.info/html-instr/VRCP14PD_ZMM_ZMM.htmlvrcp14pd zmm16, zmm15]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VCMPPD_K_ZMM_ZMM_I8.htmlvcmppd k1, zmm15, zmm0, 0x1]8;; +│ 1 │ 1 │ 1 │ 0.6 0.4 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm15, zmm16, zmm20]8;; +│ 1 │ 1 │ 1 │ 0.2 0.8 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm18, zmm16, zmm16]8;; +│ 1 │ 1 │ 1 │ 0.4 0.6 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm15, zmm18, zmm15]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMOVUPD_ZMM_M512.htmlvmovupd zmm18, zmmword ptr [rsp+0x200]]8;; +│ 1 │ 1 │ 1 │ 0.4 0.6 │ │ ]8;;https://www.uops.info/html-instr/VSUBPD_ZMM_ZMM_ZMM.htmlvsubpd zmm18, zmm18, zmm29]8;; +│ 1 │ 1 │ 1 │ 0.4 0.6 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm16, zmm1, zmm16]8;; +│ 1 │ 1 │ 1 │ 0.8 0.2 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm16, zmm16, zmm15]8;; +│ 1 │ 1 │ 1 │ 0.2 0.8 │ │ ]8;;https://www.uops.info/html-instr/VADDPD_ZMM_ZMM_ZMM.htmlvaddpd zmm15, zmm15, zmm2]8;; +│ 1 │ 1 │ 1 │ 0.6 0.4 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm15, zmm16, zmm15]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMOVUPD_ZMM_M512.htmlvmovupd zmm16, zmmword ptr [rsp+0x1c0]]8;; +│ 1 │ 1 │ 1 │ 0.4 0.6 │ │ ]8;;https://www.uops.info/html-instr/VSUBPD_ZMM_ZMM_ZMM.htmlvsubpd zmm16, zmm16, zmm30]8;; +│ 1 │ 1 │ 1 │ 0.2 0.8 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PD_ZMM_K_ZMM_ZMM.htmlvfmadd231pd zmm19{k1}, zmm15, zmm14]8;; +│ 1 │ 1 │ 1 │ 0.8 0.2 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm14, zmm16, zmm16]8;; +│ 1 │ 1 │ 1 │ 0.2 0.8 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PD_ZMM_ZMM_ZMM.htmlvfmadd231pd zmm14, zmm18, zmm18]8;; +│ 1 │ 1 │ 1 │ 0.8 0.2 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PD_ZMM_ZMM_ZMM.htmlvfmadd231pd zmm14, zmm3, zmm3]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VCMPPD_K_ZMM_ZMM_I8.htmlvcmppd k2, zmm14, zmm0, 0x1]8;; +│ 3 │ 3 │ 3 │ 2.8 0.2 │ │ ]8;;https://www.uops.info/html-instr/VRCP14PD_ZMM_ZMM.htmlvrcp14pd zmm14, zmm14]8;; +│ 1 │ 1 │ 1 │ 0.2 0.8 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PD_ZMM_K_ZMM_ZMM.htmlvfmadd231pd zmm11{k1}, zmm15, zmm12]8;; +│ 1 │ 1 │ 1 │ 0.6 0.4 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PD_ZMM_K_ZMM_ZMM.htmlvfmadd231pd zmm7{k1}, zmm15, zmm31]8;; +│ 1 │ 1 │ 1 │ 0.2 0.8 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm12, zmm14, zmm20]8;; +│ 1 │ 1 │ 1 │ 0.4 0.6 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm15, zmm14, zmm14]8;; +│ 1 │ 1 │ 1 │ 0.2 0.8 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm12, zmm15, zmm12]8;; +│ 1 │ 1 │ 1 │ 0.6 0.4 │ │ ]8;;https://www.uops.info/html-instr/VSUBPD_ZMM_ZMM_ZMM.htmlvsubpd zmm15, zmm24, zmm28]8;; +│ 1 │ 1 │ 1 │ 0.4 0.6 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm14, zmm1, zmm14]8;; +│ 1 │ 1 │ 1 │ 0.8 0.2 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm14, zmm14, zmm12]8;; +│ 1 │ 1 │ 1 │ 0.2 0.8 │ │ ]8;;https://www.uops.info/html-instr/VADDPD_ZMM_ZMM_ZMM.htmlvaddpd zmm12, zmm12, zmm2]8;; +│ 1 │ 1 │ 1 │ 0.6 0.4 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm12, zmm14, zmm12]8;; +│ 1 │ 1 │ 1 │ 0.2 0.8 │ │ ]8;;https://www.uops.info/html-instr/VSUBPD_ZMM_ZMM_ZMM.htmlvsubpd zmm14, zmm22, zmm29]8;; +│ 1 │ 1 │ 1 │ 0.6 0.4 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PD_ZMM_K_ZMM_ZMM.htmlvfmadd231pd zmm17{k2}, zmm12, zmm3]8;; +│ 1 │ 1 │ 1 │ 0.2 0.8 │ │ ]8;;https://www.uops.info/html-instr/VSUBPD_ZMM_ZMM_ZMM.htmlvsubpd zmm3, zmm27, zmm30]8;; +│ 1 │ 1 │ 1 │ 0.8 0.2 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PD_ZMM_K_ZMM_ZMM.htmlvfmadd231pd zmm9{k2}, zmm12, zmm18]8;; +│ 1 │ 1 │ 1 │ 0.2 0.8 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm18, zmm3, zmm3]8;; +│ 1 │ 1 │ 1 │ 0.8 0.2 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PD_ZMM_ZMM_ZMM.htmlvfmadd231pd zmm18, zmm14, zmm14]8;; +│ 1 │ 1 │ 1 │ 0.2 0.8 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PD_ZMM_ZMM_ZMM.htmlvfmadd231pd zmm18, zmm15, zmm15]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VCMPPD_K_ZMM_ZMM_I8.htmlvcmppd k1, zmm18, zmm0, 0x1]8;; +│ 3 │ 3 │ 3 │ 2.2 0.8 │ │ ]8;;https://www.uops.info/html-instr/VRCP14PD_ZMM_ZMM.htmlvrcp14pd zmm18, zmm18]8;; +│ 1 │ 1 │ 1 │ 0.8 0.2 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PD_ZMM_K_ZMM_ZMM.htmlvfmadd231pd zmm5{k2}, zmm12, zmm16]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm12, zmm18, zmm20]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm16, zmm18, zmm18]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm12, zmm16, zmm12]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm16, zmm1, zmm18]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm16, zmm16, zmm12]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VADDPD_ZMM_ZMM_ZMM.htmlvaddpd zmm12, zmm12, zmm2]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm12, zmm16, zmm12]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PD_ZMM_K_ZMM_ZMM.htmlvfmadd231pd zmm21{k1}, zmm12, zmm15]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMOVUPD_ZMM_M512.htmlvmovupd zmm15, zmmword ptr [rsp+0x240]]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VSUBPD_ZMM_ZMM_ZMM.htmlvsubpd zmm15, zmm15, zmm28]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMOVUPD_ZMM_M512.htmlvmovupd zmm16, zmmword ptr [rsp+0x80]]8;; +│ 1 │ 1 │ 1 │ 0.8 0.2 │ │ ]8;;https://www.uops.info/html-instr/VSUBPD_ZMM_ZMM_ZMM.htmlvsubpd zmm16, zmm16, zmm29]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMOVUPD_ZMM_M512.htmlvmovupd zmm18, zmmword ptr [rsp+0x180]]8;; +│ 1 │ 1 │ 1 │ 0.4 0.6 │ │ ]8;;https://www.uops.info/html-instr/VSUBPD_ZMM_ZMM_ZMM.htmlvsubpd zmm18, zmm18, zmm30]8;; +│ 1 │ 1 │ 1 │ 0.4 0.6 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PD_ZMM_K_ZMM_ZMM.htmlvfmadd231pd zmm10{k1}, zmm12, zmm14]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm14, zmm18, zmm18]8;; +│ 1 │ 1 │ 1 │ 0.4 0.6 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PD_ZMM_ZMM_ZMM.htmlvfmadd231pd zmm14, zmm16, zmm16]8;; +│ 1 │ 1 │ 1 │ 0.2 0.8 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PD_ZMM_ZMM_ZMM.htmlvfmadd231pd zmm14, zmm15, zmm15]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VCMPPD_K_ZMM_ZMM_I8.htmlvcmppd k2, zmm14, zmm0, 0x1]8;; +│ 3 │ 3 │ 3 │ 2.6 0.4 │ │ ]8;;https://www.uops.info/html-instr/VRCP14PD_ZMM_ZMM.htmlvrcp14pd zmm14, zmm14]8;; +│ 1 │ 1 │ 1 │ 0.4 0.6 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PD_ZMM_K_ZMM_ZMM.htmlvfmadd231pd zmm6{k1}, zmm12, zmm3]8;; +│ 1 │ 1 │ 1 │ 0.2 0.8 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm3, zmm14, zmm20]8;; +│ 1 │ 1 │ 1 │ 0.6 0.4 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm12, zmm14, zmm14]8;; +│ 1 │ 1 │ 1 │ 0.2 0.8 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm3, zmm12, zmm3]8;; +│ 1 │ 1 │ 1 │ 0.8 0.2 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm12, zmm1, zmm14]8;; +│ 1 │ 1 │ 1 │ 0.2 0.8 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm12, zmm12, zmm3]8;; +│ 1 │ 1 │ 1 │ 0.8 0.2 │ │ ]8;;https://www.uops.info/html-instr/VADDPD_ZMM_ZMM_ZMM.htmlvaddpd zmm3, zmm3, zmm2]8;; +│ 1 │ 1 │ 1 │ 0.2 0.8 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm3, zmm12, zmm3]8;; +│ 1 │ 1 │ 1 │ 0.8 0.2 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PD_ZMM_K_ZMM_ZMM.htmlvfmadd231pd zmm13{k2}, zmm3, zmm15]8;; +│ 1 │ 1 │ 1 │ 0.2 0.8 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PD_ZMM_K_ZMM_ZMM.htmlvfmadd231pd zmm8{k2}, zmm3, zmm16]8;; +│ 1 │ 1 │ 1 │ 0.8 0.2 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PD_ZMM_K_ZMM_ZMM.htmlvfmadd231pd zmm4{k2}, zmm3, zmm18]8;; +│ 1 │ 1 │ 1 │ 0.6 0.4 │ │ ]8;;https://www.uops.info/html-instr/INC_R64.htmlinc rcx]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/CMP_39_R64_R64.htmlcmp r11, rcx]8;; +│ │ │ │ │ M │ ]8;;https://www.uops.info/html-instr/JNZ_Rel32.htmljnz ]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/JMP_Rel32.htmljmp ]8;; +├───────────────────────┼────────┼───────┼───────────────────────────────────────────────────────────────────────┼───────┤ +│ 95 │ 95 │ 95 │ 39.6 1.6 5 5 40.4 3.4 │ │ Total +└───────────────────────┴────────┴───────┴───────────────────────────────────────────────────────────────────────┴───────┘ + diff --git a/static_analysis/rafael/analyses/gromacs-icx-avx512-dp-icl.out b/static_analysis/rafael/analyses/gromacs-icx-avx512-dp-icl.out new file mode 100644 index 0000000..06d1a57 --- /dev/null +++ b/static_analysis/rafael/analyses/gromacs-icx-avx512-dp-icl.out @@ -0,0 +1,107 @@ +Throughput (in cycles per iteration): 72.00 +Bottleneck: Ports + +The following throughputs could be achieved if the given property were the only bottleneck: + + - DSB: 15.83 + - Issue: 19.00 + - Ports: 72.00 + - Dependencies: 4.00 + +M - Macro-fused with previous instruction + +┌───────────────────────┬────────┬───────┬─────────────────────────────────────────────────────────────────────────────────────────┬───────┐ +│ MITE MS DSB LSD │ Issued │ Exec. │ Port 0 Port 1 Port 2 Port 3 Port 4 Port 5 Port 6 Port 7 Port 8 Port 9 │ Notes │ +├───────────────────────┼────────┼───────┼─────────────────────────────────────────────────────────────────────────────────────────┼───────┤ +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/MOVSXD_R64_M32.htmlmovsxd rax, dword ptr [rdx+rcx*4]]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/LEA_B_IS_R64.htmllea rax, ptr [rax+rax*2]]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/SHL_R64_I8.htmlshl rax, 0x6]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMOVAPD_ZMM_M512.htmlvmovapd zmm28, zmmword ptr [rdi+rax*1]]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMOVAPD_ZMM_M512.htmlvmovapd zmm29, zmmword ptr [rdi+rax*1+0x40]]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMOVAPD_ZMM_M512.htmlvmovapd zmm30, zmmword ptr [rdi+rax*1+0x80]]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMOVUPD_ZMM_M512.htmlvmovupd zmm3, zmmword ptr [rsp+0x40]]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VSUBPD_ZMM_ZMM_ZMM.htmlvsubpd zmm14, zmm3, zmm28]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VSUBPD_ZMM_ZMM_ZMM.htmlvsubpd zmm12, zmm26, zmm29]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VSUBPD_ZMM_ZMM_ZMM.htmlvsubpd zmm31, zmm25, zmm30]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VSUBPD_ZMM_ZMM_ZMM.htmlvsubpd zmm3, zmm23, zmm28]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm15, zmm31, zmm31]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PD_ZMM_ZMM_ZMM.htmlvfmadd231pd zmm15, zmm12, zmm12]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PD_ZMM_ZMM_ZMM.htmlvfmadd231pd zmm15, zmm14, zmm14]8;; +│ 3 │ 3 │ 3 │ 2 1 │ │ ]8;;https://www.uops.info/html-instr/VRCP14PD_ZMM_ZMM.htmlvrcp14pd zmm16, zmm15]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VCMPPD_K_ZMM_ZMM_I8.htmlvcmppd k1, zmm15, zmm0, 0x1]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm15, zmm16, zmm20]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm18, zmm16, zmm16]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm15, zmm18, zmm15]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMOVUPD_ZMM_M512.htmlvmovupd zmm18, zmmword ptr [rsp+0x200]]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VSUBPD_ZMM_ZMM_ZMM.htmlvsubpd zmm18, zmm18, zmm29]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm16, zmm1, zmm16]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm16, zmm16, zmm15]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VADDPD_ZMM_ZMM_ZMM.htmlvaddpd zmm15, zmm15, zmm2]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm15, zmm16, zmm15]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMOVUPD_ZMM_M512.htmlvmovupd zmm16, zmmword ptr [rsp+0x1c0]]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VSUBPD_ZMM_ZMM_ZMM.htmlvsubpd zmm16, zmm16, zmm30]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PD_ZMM_K_ZMM_ZMM.htmlvfmadd231pd zmm19{k1}, zmm15, zmm14]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm14, zmm16, zmm16]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PD_ZMM_ZMM_ZMM.htmlvfmadd231pd zmm14, zmm18, zmm18]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PD_ZMM_ZMM_ZMM.htmlvfmadd231pd zmm14, zmm3, zmm3]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VCMPPD_K_ZMM_ZMM_I8.htmlvcmppd k2, zmm14, zmm0, 0x1]8;; +│ 3 │ 3 │ 3 │ 2 1 │ │ ]8;;https://www.uops.info/html-instr/VRCP14PD_ZMM_ZMM.htmlvrcp14pd zmm14, zmm14]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PD_ZMM_K_ZMM_ZMM.htmlvfmadd231pd zmm11{k1}, zmm15, zmm12]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PD_ZMM_K_ZMM_ZMM.htmlvfmadd231pd zmm7{k1}, zmm15, zmm31]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm12, zmm14, zmm20]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm15, zmm14, zmm14]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm12, zmm15, zmm12]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VSUBPD_ZMM_ZMM_ZMM.htmlvsubpd zmm15, zmm24, zmm28]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm14, zmm1, zmm14]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm14, zmm14, zmm12]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VADDPD_ZMM_ZMM_ZMM.htmlvaddpd zmm12, zmm12, zmm2]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm12, zmm14, zmm12]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VSUBPD_ZMM_ZMM_ZMM.htmlvsubpd zmm14, zmm22, zmm29]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PD_ZMM_K_ZMM_ZMM.htmlvfmadd231pd zmm17{k2}, zmm12, zmm3]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VSUBPD_ZMM_ZMM_ZMM.htmlvsubpd zmm3, zmm27, zmm30]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PD_ZMM_K_ZMM_ZMM.htmlvfmadd231pd zmm9{k2}, zmm12, zmm18]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm18, zmm3, zmm3]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PD_ZMM_ZMM_ZMM.htmlvfmadd231pd zmm18, zmm14, zmm14]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PD_ZMM_ZMM_ZMM.htmlvfmadd231pd zmm18, zmm15, zmm15]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VCMPPD_K_ZMM_ZMM_I8.htmlvcmppd k1, zmm18, zmm0, 0x1]8;; +│ 3 │ 3 │ 3 │ 2 1 │ │ ]8;;https://www.uops.info/html-instr/VRCP14PD_ZMM_ZMM.htmlvrcp14pd zmm18, zmm18]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PD_ZMM_K_ZMM_ZMM.htmlvfmadd231pd zmm5{k2}, zmm12, zmm16]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm12, zmm18, zmm20]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm16, zmm18, zmm18]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm12, zmm16, zmm12]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm16, zmm1, zmm18]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm16, zmm16, zmm12]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VADDPD_ZMM_ZMM_ZMM.htmlvaddpd zmm12, zmm12, zmm2]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm12, zmm16, zmm12]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PD_ZMM_K_ZMM_ZMM.htmlvfmadd231pd zmm21{k1}, zmm12, zmm15]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMOVUPD_ZMM_M512.htmlvmovupd zmm15, zmmword ptr [rsp+0x240]]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VSUBPD_ZMM_ZMM_ZMM.htmlvsubpd zmm15, zmm15, zmm28]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMOVUPD_ZMM_M512.htmlvmovupd zmm16, zmmword ptr [rsp+0x80]]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VSUBPD_ZMM_ZMM_ZMM.htmlvsubpd zmm16, zmm16, zmm29]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMOVUPD_ZMM_M512.htmlvmovupd zmm18, zmmword ptr [rsp+0x180]]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VSUBPD_ZMM_ZMM_ZMM.htmlvsubpd zmm18, zmm18, zmm30]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PD_ZMM_K_ZMM_ZMM.htmlvfmadd231pd zmm10{k1}, zmm12, zmm14]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm14, zmm18, zmm18]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PD_ZMM_ZMM_ZMM.htmlvfmadd231pd zmm14, zmm16, zmm16]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PD_ZMM_ZMM_ZMM.htmlvfmadd231pd zmm14, zmm15, zmm15]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VCMPPD_K_ZMM_ZMM_I8.htmlvcmppd k2, zmm14, zmm0, 0x1]8;; +│ 3 │ 3 │ 3 │ 2 1 │ │ ]8;;https://www.uops.info/html-instr/VRCP14PD_ZMM_ZMM.htmlvrcp14pd zmm14, zmm14]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PD_ZMM_K_ZMM_ZMM.htmlvfmadd231pd zmm6{k1}, zmm12, zmm3]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm3, zmm14, zmm20]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm12, zmm14, zmm14]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm3, zmm12, zmm3]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm12, zmm1, zmm14]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm12, zmm12, zmm3]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VADDPD_ZMM_ZMM_ZMM.htmlvaddpd zmm3, zmm3, zmm2]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPD_ZMM_ZMM_ZMM.htmlvmulpd zmm3, zmm12, zmm3]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PD_ZMM_K_ZMM_ZMM.htmlvfmadd231pd zmm13{k2}, zmm3, zmm15]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PD_ZMM_K_ZMM_ZMM.htmlvfmadd231pd zmm8{k2}, zmm3, zmm16]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PD_ZMM_K_ZMM_ZMM.htmlvfmadd231pd zmm4{k2}, zmm3, zmm18]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/INC_R64.htmlinc rcx]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/CMP_39_R64_R64.htmlcmp r11, rcx]8;; +│ │ │ │ │ M │ ]8;;https://www.uops.info/html-instr/JNZ_Rel32.htmljnz ]8;; +│ 1 │ 1 │ │ │ │ ]8;;https://www.uops.info/html-instr/JMP_Rel32.htmljmp ]8;; +├───────────────────────┼────────┼───────┼─────────────────────────────────────────────────────────────────────────────────────────┼───────┤ +│ 95 │ 95 │ 94 │ 72 1 5 5 8 3 │ │ Total +└───────────────────────┴────────┴───────┴─────────────────────────────────────────────────────────────────────────────────────────┴───────┘ + diff --git a/static_analysis/rafael/analyses/gromacs-icx-avx512-sp-clx.out b/static_analysis/rafael/analyses/gromacs-icx-avx512-sp-clx.out new file mode 100644 index 0000000..e1a6cf5 --- /dev/null +++ b/static_analysis/rafael/analyses/gromacs-icx-avx512-sp-clx.out @@ -0,0 +1,66 @@ +Throughput (in cycles per iteration): 20.44 +Bottleneck: Ports + +The following throughputs could be achieved if the given property were the only bottleneck: + + - LSD: 13.00 + - Issue: 12.75 + - Ports: 21.00 + - Dependencies: 4.00 + +M - Macro-fused with previous instruction + +┌───────────────────────┬────────┬───────┬───────────────────────────────────────────────────────────────────────┬───────┐ +│ MITE MS DSB LSD │ Issued │ Exec. │ Port 0 Port 1 Port 2 Port 3 Port 4 Port 5 Port 6 Port 7 │ Notes │ +├───────────────────────┼────────┼───────┼───────────────────────────────────────────────────────────────────────┼───────┤ +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/MOVSXD_R64_M32.htmlmovsxd rdi, dword ptr [rsi+rdx*4]]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/LEA_B_IS_R64.htmllea rdi, ptr [rdi+rdi*2]]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/SHL_R64_I8.htmlshl rdi, 0x5]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMOVUPD_ZMM_M512.htmlvmovupd zmm16, zmmword ptr [rcx+rdi*1]]8;; +│ 2 │ 2 │ 2 │ 1 1 │ │ ]8;;https://www.uops.info/html-instr/VINSERTF64X4_ZMM_ZMM_M256_I8.htmlvinsertf64x4 zmm17, zmm16, ymmword ptr [rcx+rdi*1], 0x1]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VBROADCASTF64X4_ZMM_M256.htmlvbroadcastf64x4 zmm18, ymmword ptr [rcx+rdi*1+0x40]]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VSHUFF64X2_ZMM_ZMM_ZMM_I8.htmlvshuff64x2 zmm16, zmm16, zmm16, 0xee]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VSUBPS_ZMM_ZMM_ZMM.htmlvsubps zmm19, zmm6, zmm17]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VSUBPS_ZMM_ZMM_ZMM.htmlvsubps zmm20, zmm10, zmm16]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VSUBPS_ZMM_ZMM_ZMM.htmlvsubps zmm21, zmm12, zmm18]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VSUBPS_ZMM_ZMM_ZMM.htmlvsubps zmm17, zmm9, zmm17]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VSUBPS_ZMM_ZMM_ZMM.htmlvsubps zmm18, zmm14, zmm18]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VSUBPS_ZMM_ZMM_ZMM.htmlvsubps zmm16, zmm11, zmm16]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPS_ZMM_ZMM_ZMM.htmlvmulps zmm22, zmm21, zmm21]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PS_ZMM_ZMM_ZMM.htmlvfmadd231ps zmm22, zmm20, zmm20]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PS_ZMM_ZMM_ZMM.htmlvfmadd231ps zmm22, zmm19, zmm19]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPS_ZMM_ZMM_ZMM.htmlvmulps zmm23, zmm18, zmm18]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PS_ZMM_ZMM_ZMM.htmlvfmadd231ps zmm23, zmm16, zmm16]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PS_ZMM_ZMM_ZMM.htmlvfmadd231ps zmm23, zmm17, zmm17]8;; +│ 3 │ 3 │ 3 │ 2 1 │ │ ]8;;https://www.uops.info/html-instr/VRCP14PS_ZMM_ZMM.htmlvrcp14ps zmm24, zmm22]8;; +│ 3 │ 3 │ 3 │ 2 1 │ │ ]8;;https://www.uops.info/html-instr/VRCP14PS_ZMM_ZMM.htmlvrcp14ps zmm25, zmm23]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VCMPPS_K_ZMM_ZMM_I8.htmlvcmpps k2, zmm22, zmm0, 0x1]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VCMPPS_K_ZMM_ZMM_I8.htmlvcmpps k1, zmm23, zmm0, 0x1]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPS_ZMM_ZMM_ZMM.htmlvmulps zmm22, zmm24, zmm29]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPS_ZMM_ZMM_ZMM.htmlvmulps zmm23, zmm24, zmm24]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPS_ZMM_ZMM_ZMM.htmlvmulps zmm26, zmm25, zmm29]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPS_ZMM_ZMM_ZMM.htmlvmulps zmm22, zmm23, zmm22]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPS_ZMM_ZMM_ZMM.htmlvmulps zmm23, zmm25, zmm25]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPS_ZMM_ZMM_ZMM.htmlvmulps zmm23, zmm23, zmm26]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VADDPS_ZMM_ZMM_ZMM.htmlvaddps zmm26, zmm22, zmm2]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPS_ZMM_ZMM_ZMM.htmlvmulps zmm24, zmm1, zmm24]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPS_ZMM_ZMM_ZMM.htmlvmulps zmm22, zmm24, zmm22]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPS_ZMM_ZMM_ZMM.htmlvmulps zmm22, zmm22, zmm26]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VADDPS_ZMM_ZMM_ZMM.htmlvaddps zmm24, zmm23, zmm2]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPS_ZMM_ZMM_ZMM.htmlvmulps zmm25, zmm1, zmm25]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPS_ZMM_ZMM_ZMM.htmlvmulps zmm23, zmm25, zmm23]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPS_ZMM_ZMM_ZMM.htmlvmulps zmm23, zmm23, zmm24]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PS_ZMM_K_ZMM_ZMM.htmlvfmadd231ps zmm13{k2}, zmm22, zmm19]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PS_ZMM_K_ZMM_ZMM.htmlvfmadd231ps zmm8{k2}, zmm22, zmm20]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PS_ZMM_K_ZMM_ZMM.htmlvfmadd231ps zmm5{k2}, zmm22, zmm21]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PS_ZMM_K_ZMM_ZMM.htmlvfmadd231ps zmm15{k1}, zmm23, zmm17]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PS_ZMM_K_ZMM_ZMM.htmlvfmadd231ps zmm7{k1}, zmm23, zmm16]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PS_ZMM_K_ZMM_ZMM.htmlvfmadd231ps zmm4{k1}, zmm23, zmm18]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/INC_R64.htmlinc rdx]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/CMP_39_R64_R64.htmlcmp r12, rdx]8;; +│ │ │ │ │ M │ ]8;;https://www.uops.info/html-instr/JNZ_Rel32.htmljnz ]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/JMP_Rel32.htmljmp ]8;; +├───────────────────────┼────────┼───────┼───────────────────────────────────────────────────────────────────────┼───────┤ +│ 51 │ 51 │ 51 │ 21 1 2 2 21 4 │ │ Total +└───────────────────────┴────────┴───────┴───────────────────────────────────────────────────────────────────────┴───────┘ + diff --git a/static_analysis/rafael/analyses/gromacs-icx-avx512-sp-icl.out b/static_analysis/rafael/analyses/gromacs-icx-avx512-sp-icl.out new file mode 100644 index 0000000..433bbee --- /dev/null +++ b/static_analysis/rafael/analyses/gromacs-icx-avx512-sp-icl.out @@ -0,0 +1,66 @@ +Throughput (in cycles per iteration): 36.40 +Bottleneck: Ports + +The following throughputs could be achieved if the given property were the only bottleneck: + + - LSD: 11.00 + - Issue: 10.20 + - Ports: 36.00 + - Dependencies: 4.00 + +M - Macro-fused with previous instruction + +┌───────────────────────┬────────┬───────┬─────────────────────────────────────────────────────────────────────────────────────────┬───────┐ +│ MITE MS DSB LSD │ Issued │ Exec. │ Port 0 Port 1 Port 2 Port 3 Port 4 Port 5 Port 6 Port 7 Port 8 Port 9 │ Notes │ +├───────────────────────┼────────┼───────┼─────────────────────────────────────────────────────────────────────────────────────────┼───────┤ +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/MOVSXD_R64_M32.htmlmovsxd rdi, dword ptr [rsi+rdx*4]]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/LEA_B_IS_R64.htmllea rdi, ptr [rdi+rdi*2]]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/SHL_R64_I8.htmlshl rdi, 0x5]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMOVUPD_ZMM_M512.htmlvmovupd zmm16, zmmword ptr [rcx+rdi*1]]8;; +│ 2 │ 2 │ 2 │ 1 1 │ │ ]8;;https://www.uops.info/html-instr/VINSERTF64X4_ZMM_ZMM_M256_I8.htmlvinsertf64x4 zmm17, zmm16, ymmword ptr [rcx+rdi*1], 0x1]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VBROADCASTF64X4_ZMM_M256.htmlvbroadcastf64x4 zmm18, ymmword ptr [rcx+rdi*1+0x40]]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VSHUFF64X2_ZMM_ZMM_ZMM_I8.htmlvshuff64x2 zmm16, zmm16, zmm16, 0xee]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VSUBPS_ZMM_ZMM_ZMM.htmlvsubps zmm19, zmm6, zmm17]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VSUBPS_ZMM_ZMM_ZMM.htmlvsubps zmm20, zmm10, zmm16]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VSUBPS_ZMM_ZMM_ZMM.htmlvsubps zmm21, zmm12, zmm18]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VSUBPS_ZMM_ZMM_ZMM.htmlvsubps zmm17, zmm9, zmm17]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VSUBPS_ZMM_ZMM_ZMM.htmlvsubps zmm18, zmm14, zmm18]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VSUBPS_ZMM_ZMM_ZMM.htmlvsubps zmm16, zmm11, zmm16]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPS_ZMM_ZMM_ZMM.htmlvmulps zmm22, zmm21, zmm21]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PS_ZMM_ZMM_ZMM.htmlvfmadd231ps zmm22, zmm20, zmm20]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PS_ZMM_ZMM_ZMM.htmlvfmadd231ps zmm22, zmm19, zmm19]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPS_ZMM_ZMM_ZMM.htmlvmulps zmm23, zmm18, zmm18]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PS_ZMM_ZMM_ZMM.htmlvfmadd231ps zmm23, zmm16, zmm16]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PS_ZMM_ZMM_ZMM.htmlvfmadd231ps zmm23, zmm17, zmm17]8;; +│ 3 │ 3 │ 3 │ 2 1 │ │ ]8;;https://www.uops.info/html-instr/VRCP14PS_ZMM_ZMM.htmlvrcp14ps zmm24, zmm22]8;; +│ 3 │ 3 │ 3 │ 2 1 │ │ ]8;;https://www.uops.info/html-instr/VRCP14PS_ZMM_ZMM.htmlvrcp14ps zmm25, zmm23]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VCMPPS_K_ZMM_ZMM_I8.htmlvcmpps k2, zmm22, zmm0, 0x1]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VCMPPS_K_ZMM_ZMM_I8.htmlvcmpps k1, zmm23, zmm0, 0x1]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPS_ZMM_ZMM_ZMM.htmlvmulps zmm22, zmm24, zmm29]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPS_ZMM_ZMM_ZMM.htmlvmulps zmm23, zmm24, zmm24]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPS_ZMM_ZMM_ZMM.htmlvmulps zmm26, zmm25, zmm29]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPS_ZMM_ZMM_ZMM.htmlvmulps zmm22, zmm23, zmm22]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPS_ZMM_ZMM_ZMM.htmlvmulps zmm23, zmm25, zmm25]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPS_ZMM_ZMM_ZMM.htmlvmulps zmm23, zmm23, zmm26]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VADDPS_ZMM_ZMM_ZMM.htmlvaddps zmm26, zmm22, zmm2]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPS_ZMM_ZMM_ZMM.htmlvmulps zmm24, zmm1, zmm24]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPS_ZMM_ZMM_ZMM.htmlvmulps zmm22, zmm24, zmm22]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPS_ZMM_ZMM_ZMM.htmlvmulps zmm22, zmm22, zmm26]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VADDPS_ZMM_ZMM_ZMM.htmlvaddps zmm24, zmm23, zmm2]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPS_ZMM_ZMM_ZMM.htmlvmulps zmm25, zmm1, zmm25]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPS_ZMM_ZMM_ZMM.htmlvmulps zmm23, zmm25, zmm23]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VMULPS_ZMM_ZMM_ZMM.htmlvmulps zmm23, zmm23, zmm24]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PS_ZMM_K_ZMM_ZMM.htmlvfmadd231ps zmm13{k2}, zmm22, zmm19]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PS_ZMM_K_ZMM_ZMM.htmlvfmadd231ps zmm8{k2}, zmm22, zmm20]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PS_ZMM_K_ZMM_ZMM.htmlvfmadd231ps zmm5{k2}, zmm22, zmm21]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PS_ZMM_K_ZMM_ZMM.htmlvfmadd231ps zmm15{k1}, zmm23, zmm17]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PS_ZMM_K_ZMM_ZMM.htmlvfmadd231ps zmm7{k1}, zmm23, zmm16]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/VFMADD231PS_ZMM_K_ZMM_ZMM.htmlvfmadd231ps zmm4{k1}, zmm23, zmm18]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/INC_R64.htmlinc rdx]8;; +│ 1 │ 1 │ 1 │ 1 │ │ ]8;;https://www.uops.info/html-instr/CMP_39_R64_R64.htmlcmp r12, rdx]8;; +│ │ │ │ │ M │ ]8;;https://www.uops.info/html-instr/JNZ_Rel32.htmljnz ]8;; +│ 1 │ 1 │ │ │ │ ]8;;https://www.uops.info/html-instr/JMP_Rel32.htmljmp ]8;; +├───────────────────────┼────────┼───────┼─────────────────────────────────────────────────────────────────────────────────────────┼───────┤ +│ 51 │ 51 │ 50 │ 36 2 2 2 6 2 │ │ Total +└───────────────────────┴────────┴───────┴─────────────────────────────────────────────────────────────────────────────────────────┴───────┘ +