Function: clover_unpack_message_right_.DIR.OMP.PARALLEL.LOOP.2.split104 | Module: exec | Source: pack_kernel.f90:202-210 | Coverage: 0.03% |
---|
Function: clover_unpack_message_right_.DIR.OMP.PARALLEL.LOOP.2.split104 | Module: exec | Source: pack_kernel.f90:202-210 | Coverage: 0.03% |
---|
/scratch_na/users/xoserete/qaas_runs/171-419-3245/intel/CloverLeafFC/build/CloverLeafFC/CloverLeaf_ref/kernels/pack_kernel.f90: 202 - 210 |
-------------------------------------------------------------------------------- |
202: !$OMP PARALLEL DO PRIVATE(index) |
203: DO k=y_min-depth,y_max+y_inc+depth |
204: !$OMP SIMD |
205: DO j=1,depth |
206: index= buffer_offset + j+(k+depth-1)*depth |
207: field(x_max+x_inc+j,k)=right_rcv_buffer(index) |
208: ENDDO |
209: ENDDO |
210: !$OMP END PARALLEL DO |
0x449e80 PUSH %RBP |
0x449e81 MOV %RSP,%RBP |
0x449e84 PUSH %R15 |
0x449e86 PUSH %R14 |
0x449e88 PUSH %R13 |
0x449e8a PUSH %R12 |
0x449e8c PUSH %RBX |
0x449e8d SUB $0x38,%RSP |
0x449e91 MOV %R9,-0x50(%RBP) |
0x449e95 MOV %R8,-0x60(%RBP) |
0x449e99 MOV %RCX,-0x48(%RBP) |
0x449e9d MOV 0x30(%RBP),%EAX |
0x449ea0 MOVL $0,-0x3c(%RBP) |
0x449ea7 TEST %EAX,%EAX |
0x449ea9 JS 449f0a |
0x449eab MOV %RDX,%RBX |
0x449eae MOV (%RDI),%ESI |
0x449eb0 MOVL $0,-0x30(%RBP) |
0x449eb7 MOV %EAX,-0x2c(%RBP) |
0x449eba MOVL $0x1,-0x38(%RBP) |
0x449ec1 SUB $0x8,%RSP |
0x449ec5 LEA -0x38(%RBP),%RAX |
0x449ec9 LEA -0x3c(%RBP),%RCX |
0x449ecd LEA -0x30(%RBP),%R8 |
0x449ed1 LEA -0x2c(%RBP),%R9 |
0x449ed5 MOV $0x74c5f0,%EDI |
0x449eda MOV %ESI,-0x34(%RBP) |
0x449edd MOV $0x22,%EDX |
0x449ee2 PUSH $0x1 |
0x449ee4 PUSH $0x1 |
0x449ee6 PUSH %RAX |
0x449ee7 CALL 4044c0 <__kmpc_for_static_init_4@plt> |
0x449eec ADD $0x20,%RSP |
0x449ef0 MOV -0x30(%RBP),%EAX |
0x449ef3 MOV -0x2c(%RBP),%ECX |
0x449ef6 SUB %EAX,%ECX |
0x449ef8 JAE 449f40 |
0x449efa MOV $0x74c610,%EDI |
0x449eff MOV -0x34(%RBP),%ESI |
0x449f02 VZEROUPPER |
0x449f05 CALL 4040b0 <__kmpc_for_static_fini@plt> |
0x449f0a ADD $0x38,%RSP |
0x449f0e POP %RBX |
0x449f0f POP %R12 |
0x449f11 POP %R13 |
0x449f13 POP %R14 |
0x449f15 POP %R15 |
0x449f17 POP %RBP |
0x449f18 RET |
0x449f19 NOPW %CS:(%RAX,%RAX,1) |
0x449f28 NOPW %CS:(%RAX,%RAX,1) |
0x449f37 NOPW (%RAX,%RAX,1) |
0x449f40 MOV %RAX,%RDX |
0x449f43 MOV 0x18(%RBP),%RSI |
0x449f47 MOV -0x50(%RBP),%RAX |
0x449f4b MOV (%RAX),%R14D |
0x449f4e LEA -0x1(%RDX,%RBX,1),%EDI |
0x449f52 XOR %R8D,%R8D |
0x449f55 ADD %EBX,%EDX |
0x449f57 MOV %RDX,-0x58(%RBP) |
0x449f5b VMOVDQA64 0xbe2db(%RIP),%ZMM0 |
0x449f65 VMOVDQA 0xbf0d3(%RIP),%YMM1 |
0x449f6d VPTERNLOGD $-0x1,%ZMM2,%ZMM2,%ZMM2 |
0x449f74 VMOVDQA64 0xbe2c2(%RIP),%ZMM3 |
0x449f7e VMOVDQA 0xbf0da(%RIP),%YMM4 |
0x449f86 JMP 449fd8 |
0x449f88 NOPW %CS:(%RAX,%RAX,1) |
0x449f97 NOPW %CS:(%RAX,%RAX,1) |
0x449fa6 NOPW %CS:(%RAX,%RAX,1) |
0x449fb5 NOPW %CS:(%RAX,%RAX,1) |
(443) 0x449fc0 MOV %R14D,%R10D |
(443) 0x449fc3 LEA 0x1(%R8),%EAX |
(443) 0x449fc7 INC %EDI |
(443) 0x449fc9 MOV %R10D,%R14D |
(443) 0x449fcc CMP %ECX,%R8D |
(443) 0x449fcf MOV %EAX,%R8D |
(443) 0x449fd2 JE 449efa |
(443) 0x449fd8 TEST %R14D,%R14D |
(443) 0x449fdb JLE 449fc0 |
(443) 0x449fdd MOV -0x58(%RBP),%RAX |
(443) 0x449fe1 ADD %R8D,%EAX |
(443) 0x449fe4 MOV -0x60(%RBP),%RDX |
(443) 0x449fe8 MOVSXD (%RDX),%R15 |
(443) 0x449feb MOV -0x50(%RBP),%RDX |
(443) 0x449fef MOV (%RDX),%R10D |
(443) 0x449ff2 MOV 0x307be7(%RIP),%RDX |
(443) 0x449ff9 MOV 0x307c18(%RIP),%RBX |
(443) 0x44a000 MOV (%RSI),%R9 |
(443) 0x44a003 MOV 0x38(%RSI),%R12 |
(443) 0x44a007 MOV 0x20(%RBP),%R11 |
(443) 0x44a00b MOV (%R11),%R11D |
(443) 0x44a00e VPBROADCASTQ %RBX,%ZMM7 |
(443) 0x44a014 MOV 0x50(%RSI),%RBX |
(443) 0x44a018 MOV %R14D,%R14D |
(443) 0x44a01b VPBROADCASTQ %R12,%ZMM6 |
(443) 0x44a021 MOV %R14,%R13 |
(443) 0x44a024 VPBROADCASTQ %R14,%ZMM10 |
(443) 0x44a02a VPBROADCASTQ %RDX,%ZMM9 |
(443) 0x44a030 VPBROADCASTQ %R9,%ZMM8 |
(443) 0x44a036 CLTQ |
(443) 0x44a038 MOV $-0x8,%R12D |
(443) 0x44a03e AND %R12,%R13 |
(443) 0x44a041 JE 44a100 |
(443) 0x44a047 LEA -0x1(%RAX,%R10,1),%R12D |
(443) 0x44a04c IMUL %R10D,%R12D |
(443) 0x44a050 MOVSXD %R12D,%R12 |
(443) 0x44a053 INC %RAX |
(443) 0x44a056 IMUL %RAX,%RBX |
(443) 0x44a05a VPBROADCASTQ %RBX,%ZMM11 |
(443) 0x44a060 LEA (%R10,%RDI,1),%EAX |
(443) 0x44a064 IMUL %R10D,%EAX |
(443) 0x44a068 CLTQ |
(443) 0x44a06a ADD %R15,%RAX |
(443) 0x44a06d ADD -0x48(%RBP),%R11D |
(443) 0x44a071 ADD %R15,%R12 |
(443) 0x44a074 ADD %RBX,%R9 |
(443) 0x44a077 XOR %EBX,%EBX |
(443) 0x44a079 NOPL (%RAX) |
(444) 0x44a080 LEA (%RAX,%RBX,1),%R15 |
(444) 0x44a084 VPBROADCASTQ %R15,%ZMM12 |
(444) 0x44a08a VPADDQ %ZMM3,%ZMM12,%ZMM12 |
(444) 0x44a090 VPMULLQ %ZMM12,%ZMM7,%ZMM12 |
(444) 0x44a096 VXORPD %XMM13,%XMM13,%XMM13 |
(444) 0x44a09b KXNORW %K0,%K0,%K1 |
(444) 0x44a09f VGATHERQPD (%RDX,%ZMM12,1),%ZMM13{%K1} |
(444) 0x44a0a6 LEA (%R11,%RBX,1),%R15D |
(444) 0x44a0aa VPBROADCASTD %R15D,%YMM12 |
(444) 0x44a0b0 VPADDD %YMM4,%YMM12,%YMM12 |
(444) 0x44a0b4 VPMOVSXDQ %YMM12,%ZMM12 |
(444) 0x44a0ba VPSUBQ %ZMM2,%ZMM12,%ZMM12 |
(444) 0x44a0c0 VPMULLQ %ZMM12,%ZMM6,%ZMM12 |
(444) 0x44a0c6 KXNORW %K0,%K0,%K1 |
(444) 0x44a0ca VSCATTERQPD %ZMM13,(%R9,%ZMM12,1){%K1} |
(444) 0x44a0d1 ADD $0x8,%RBX |
(444) 0x44a0d5 CMP %R13,%RBX |
(444) 0x44a0d8 JB 44a080 |
(443) 0x44a0da CMP %R14,%R13 |
(443) 0x44a0dd JNE 44a123 |
(443) 0x44a0df JMP 449fc3 |
0x44a0e4 NOPW %CS:(%RAX,%RAX,1) |
0x44a0f3 NOPW %CS:(%RAX,%RAX,1) |
(443) 0x44a100 LEA -0x1(%RAX,%R10,1),%EDX |
(443) 0x44a105 IMUL %R10D,%EDX |
(443) 0x44a109 MOVSXD %EDX,%R12 |
(443) 0x44a10c ADD %R15,%R12 |
(443) 0x44a10f ADD -0x48(%RBP),%R11D |
(443) 0x44a113 INC %RAX |
(443) 0x44a116 IMUL %RAX,%RBX |
(443) 0x44a11a VPBROADCASTQ %RBX,%ZMM11 |
(443) 0x44a120 XOR %R13D,%R13D |
(443) 0x44a123 VPBROADCASTQ %R13,%ZMM12 |
(443) 0x44a129 VPSUBQ %ZMM12,%ZMM10,%ZMM10 |
(443) 0x44a12f VPCMPNLEUQ %ZMM0,%ZMM10,%K1 |
(443) 0x44a136 ADD %R13,%R12 |
(443) 0x44a139 VPBROADCASTQ %R12,%ZMM10 |
(443) 0x44a13f VPADDQ %ZMM0,%ZMM10,%ZMM10 |
(443) 0x44a145 VPMULLQ %ZMM10,%ZMM7,%ZMM7 |
(443) 0x44a14b VPADDQ %ZMM7,%ZMM9,%ZMM7 |
(443) 0x44a151 VPXOR %XMM9,%XMM9,%XMM9 |
(443) 0x44a156 KMOVQ %K1,%K2 |
(443) 0x44a15b VGATHERQPD (,%ZMM7,1),%ZMM9{%K2} |
(443) 0x44a166 VPADDQ %ZMM11,%ZMM8,%ZMM7 |
(443) 0x44a16c VMOVAPD %ZMM9,%ZMM5{%K1} |
(443) 0x44a172 INC %R11D |
(443) 0x44a175 VPBROADCASTD %R11D,%YMM8 |
(443) 0x44a17b VPBROADCASTD %R13D,%YMM9 |
(443) 0x44a181 VPADDD %YMM8,%YMM9,%YMM8 |
(443) 0x44a186 VPADDD %YMM1,%YMM8,%YMM8 |
(443) 0x44a18a VPMOVSXDQ %YMM8,%ZMM8 |
(443) 0x44a190 VPSUBQ %ZMM2,%ZMM8,%ZMM8 |
(443) 0x44a196 VPMULLQ %ZMM8,%ZMM6,%ZMM6 |
(443) 0x44a19c VPADDQ %ZMM6,%ZMM7,%ZMM6 |
(443) 0x44a1a2 VSCATTERQPD %ZMM5,(,%ZMM6,1){%K1} |
(443) 0x44a1ad JMP 449fc3 |
0x44a1b2 NOPW %CS:(%RAX,%RAX,1) |
0x44a1bc NOPL (%RAX) |
Coverage (%) | Name | Source Location | Module |
---|---|---|---|
►100.00+ | __kmp_invoke_microtask | libiomp5.so | |
○ | __kmp_invoke_task_func | libiomp5.so |
Path / |
Source file and lines | pack_kernel.f90:202-210 |
Module | exec |
nb instructions | 74 |
nb uops | 77 |
loop length | 362 |
used x86 registers | 14 |
used mmx registers | 0 |
used xmm registers | 0 |
used ymm registers | 2 |
used zmm registers | 3 |
nb stack references | 11 |
micro-operation queue | 12.83 cycles |
front end | 12.83 cycles |
P0 | P1 | P2 | P3 | P4 | P5 | P6 | P7 | P8 | P9 | P10 | P11 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|
uops | 2.30 | 2.20 | 6.33 | 6.33 | 10.00 | 2.20 | 2.10 | 10.00 | 10.00 | 10.00 | 2.20 | 6.33 |
cycles | 2.30 | 2.20 | 6.33 | 6.33 | 10.00 | 2.20 | 2.10 | 10.00 | 10.00 | 10.00 | 2.20 | 6.33 |
Cycles executing div or sqrt instructions | NA |
FE+BE cycles | 12.47-12.52 |
Stall cycles | 0.00 |
Front-end | 12.83 |
Dispatch | 10.00 |
Overall L1 | 12.83 |
all | 22% |
load | 44% |
store | 0% |
mul | NA (no mul vectorizable/vectorized instructions) |
add-sub | 0% |
fma | NA (no fma vectorizable/vectorized instructions) |
div/sqrt | NA (no div/sqrt vectorizable/vectorized instructions) |
other | 50% |
all | 22% |
load | 37% |
store | 9% |
mul | NA (no mul vectorizable/vectorized instructions) |
add-sub | 11% |
fma | NA (no fma vectorizable/vectorized instructions) |
div/sqrt | NA (no div/sqrt vectorizable/vectorized instructions) |
other | 34% |
Instruction | Nb FU | P0 | P1 | P2 | P3 | P4 | P5 | P6 | P7 | P8 | P9 | P10 | P11 | Latency | Recip. throughput |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
PUSH %RBP | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 5-12 | 0.50 |
MOV %RSP,%RBP | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
PUSH %R15 | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 5-12 | 0.50 |
PUSH %R14 | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 5-12 | 0.50 |
PUSH %R13 | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 5-12 | 0.50 |
PUSH %R12 | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 5-12 | 0.50 |
PUSH %RBX | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 5-12 | 0.50 |
SUB $0x38,%RSP | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
MOV %R9,-0x50(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
MOV %R8,-0x60(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
MOV %RCX,-0x48(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
MOV 0x30(%RBP),%EAX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOVL $0,-0x3c(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
TEST %EAX,%EAX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 2 | 0.20 |
JS 449f0a <pack_kernel_module_mp_clover_unpack_message_right_.DIR.OMP.PARALLEL.LOOP.2.split104+0x8a> | 1 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0.50 |
MOV %RDX,%RBX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
MOV (%RDI),%ESI | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOVL $0,-0x30(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
MOV %EAX,-0x2c(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
MOVL $0x1,-0x38(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
SUB $0x8,%RSP | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
LEA -0x38(%RBP),%RAX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
LEA -0x3c(%RBP),%RCX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
LEA -0x30(%RBP),%R8 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
LEA -0x2c(%RBP),%R9 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
MOV $0x74c5f0,%EDI | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
MOV %ESI,-0x34(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
MOV $0x22,%EDX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
PUSH $0x1 | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 5-12 | 0.50 |
PUSH $0x1 | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 5-12 | 0.50 |
PUSH %RAX | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 5-12 | 0.50 |
CALL 4044c0 <__kmpc_for_static_init_4@plt> | 2 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 0 | 1 |
ADD $0x20,%RSP | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
MOV -0x30(%RBP),%EAX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV -0x2c(%RBP),%ECX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
SUB %EAX,%ECX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
JAE 449f40 <pack_kernel_module_mp_clover_unpack_message_right_.DIR.OMP.PARALLEL.LOOP.2.split104+0xc0> | 1 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0.50 |
MOV $0x74c610,%EDI | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
MOV -0x34(%RBP),%ESI | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
VZEROUPPER | 2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
CALL 4040b0 <__kmpc_for_static_fini@plt> | 2 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 0 | 1 |
ADD $0x38,%RSP | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
POP %RBX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1-6 | 0.33 |
POP %R12 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1-6 | 0.33 |
POP %R13 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1-6 | 0.33 |
POP %R14 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1-6 | 0.33 |
POP %R15 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1-6 | 0.33 |
POP %RBP | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1-6 | 0.33 |
RET | 1 | 0.50 | 0 | 0.33 | 0.33 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0.33 | 0 | 2.13 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW (%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
MOV %RAX,%RDX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
MOV 0x18(%RBP),%RSI | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV -0x50(%RBP),%RAX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV (%RAX),%R14D | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
LEA -0x1(%RDX,%RBX,1),%EDI | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 1 |
XOR %R8D,%R8D | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
ADD %EBX,%EDX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
MOV %RDX,-0x58(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
VMOVDQA64 0xbe2db(%RIP),%ZMM0 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0-1 | 0.50 |
VMOVDQA 0xbf0d3(%RIP),%YMM1 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0-1 | 0.33 |
VPTERNLOGD $-0x1,%ZMM2,%ZMM2,%ZMM2 | 1 | 0.50 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50 |
VMOVDQA64 0xbe2c2(%RIP),%ZMM3 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0-1 | 0.50 |
VMOVDQA 0xbf0da(%RIP),%YMM4 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0-1 | 0.33 |
JMP 449fd8 <pack_kernel_module_mp_clover_unpack_message_right_.DIR.OMP.PARALLEL.LOOP.2.split104+0x158> | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 5.84 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPL (%RAX) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
Source file and lines | pack_kernel.f90:202-210 |
Module | exec |
nb instructions | 74 |
nb uops | 77 |
loop length | 362 |
used x86 registers | 14 |
used mmx registers | 0 |
used xmm registers | 0 |
used ymm registers | 2 |
used zmm registers | 3 |
nb stack references | 11 |
micro-operation queue | 12.83 cycles |
front end | 12.83 cycles |
P0 | P1 | P2 | P3 | P4 | P5 | P6 | P7 | P8 | P9 | P10 | P11 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|
uops | 2.30 | 2.20 | 6.33 | 6.33 | 10.00 | 2.20 | 2.10 | 10.00 | 10.00 | 10.00 | 2.20 | 6.33 |
cycles | 2.30 | 2.20 | 6.33 | 6.33 | 10.00 | 2.20 | 2.10 | 10.00 | 10.00 | 10.00 | 2.20 | 6.33 |
Cycles executing div or sqrt instructions | NA |
FE+BE cycles | 12.47-12.52 |
Stall cycles | 0.00 |
Front-end | 12.83 |
Dispatch | 10.00 |
Overall L1 | 12.83 |
all | 22% |
load | 44% |
store | 0% |
mul | NA (no mul vectorizable/vectorized instructions) |
add-sub | 0% |
fma | NA (no fma vectorizable/vectorized instructions) |
div/sqrt | NA (no div/sqrt vectorizable/vectorized instructions) |
other | 50% |
all | 22% |
load | 37% |
store | 9% |
mul | NA (no mul vectorizable/vectorized instructions) |
add-sub | 11% |
fma | NA (no fma vectorizable/vectorized instructions) |
div/sqrt | NA (no div/sqrt vectorizable/vectorized instructions) |
other | 34% |
Instruction | Nb FU | P0 | P1 | P2 | P3 | P4 | P5 | P6 | P7 | P8 | P9 | P10 | P11 | Latency | Recip. throughput |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
PUSH %RBP | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 5-12 | 0.50 |
MOV %RSP,%RBP | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
PUSH %R15 | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 5-12 | 0.50 |
PUSH %R14 | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 5-12 | 0.50 |
PUSH %R13 | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 5-12 | 0.50 |
PUSH %R12 | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 5-12 | 0.50 |
PUSH %RBX | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 5-12 | 0.50 |
SUB $0x38,%RSP | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
MOV %R9,-0x50(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
MOV %R8,-0x60(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
MOV %RCX,-0x48(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
MOV 0x30(%RBP),%EAX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOVL $0,-0x3c(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
TEST %EAX,%EAX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 2 | 0.20 |
JS 449f0a <pack_kernel_module_mp_clover_unpack_message_right_.DIR.OMP.PARALLEL.LOOP.2.split104+0x8a> | 1 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0.50 |
MOV %RDX,%RBX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
MOV (%RDI),%ESI | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOVL $0,-0x30(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
MOV %EAX,-0x2c(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
MOVL $0x1,-0x38(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
SUB $0x8,%RSP | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
LEA -0x38(%RBP),%RAX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
LEA -0x3c(%RBP),%RCX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
LEA -0x30(%RBP),%R8 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
LEA -0x2c(%RBP),%R9 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
MOV $0x74c5f0,%EDI | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
MOV %ESI,-0x34(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
MOV $0x22,%EDX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
PUSH $0x1 | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 5-12 | 0.50 |
PUSH $0x1 | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 5-12 | 0.50 |
PUSH %RAX | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 5-12 | 0.50 |
CALL 4044c0 <__kmpc_for_static_init_4@plt> | 2 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 0 | 1 |
ADD $0x20,%RSP | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
MOV -0x30(%RBP),%EAX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV -0x2c(%RBP),%ECX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
SUB %EAX,%ECX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
JAE 449f40 <pack_kernel_module_mp_clover_unpack_message_right_.DIR.OMP.PARALLEL.LOOP.2.split104+0xc0> | 1 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0.50 |
MOV $0x74c610,%EDI | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
MOV -0x34(%RBP),%ESI | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
VZEROUPPER | 2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
CALL 4040b0 <__kmpc_for_static_fini@plt> | 2 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 0 | 1 |
ADD $0x38,%RSP | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
POP %RBX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1-6 | 0.33 |
POP %R12 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1-6 | 0.33 |
POP %R13 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1-6 | 0.33 |
POP %R14 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1-6 | 0.33 |
POP %R15 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1-6 | 0.33 |
POP %RBP | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1-6 | 0.33 |
RET | 1 | 0.50 | 0 | 0.33 | 0.33 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0.33 | 0 | 2.13 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW (%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
MOV %RAX,%RDX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
MOV 0x18(%RBP),%RSI | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV -0x50(%RBP),%RAX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV (%RAX),%R14D | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
LEA -0x1(%RDX,%RBX,1),%EDI | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 1 |
XOR %R8D,%R8D | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
ADD %EBX,%EDX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
MOV %RDX,-0x58(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
VMOVDQA64 0xbe2db(%RIP),%ZMM0 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0-1 | 0.50 |
VMOVDQA 0xbf0d3(%RIP),%YMM1 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0-1 | 0.33 |
VPTERNLOGD $-0x1,%ZMM2,%ZMM2,%ZMM2 | 1 | 0.50 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50 |
VMOVDQA64 0xbe2c2(%RIP),%ZMM3 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0-1 | 0.50 |
VMOVDQA 0xbf0da(%RIP),%YMM4 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0-1 | 0.33 |
JMP 449fd8 <pack_kernel_module_mp_clover_unpack_message_right_.DIR.OMP.PARALLEL.LOOP.2.split104+0x158> | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 5.84 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPL (%RAX) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
Name | Coverage (%) | Time (s) |
---|---|---|
▼clover_unpack_message_right_.DIR.OMP.PARALLEL.LOOP.2.split104– | 0.03 | 0.01 |
▼Loop 443 - pack_kernel.f90:203-207 - exec– | 0.03 | 0.02 |
○Loop 444 - pack_kernel.f90:205-207 - exec | 0 | 0 |