Function: clover_unpack_message_left_.DIR.OMP.PARALLEL.LOOP.2.split99 | Module: exec | Source: pack_kernel.f90:108-116 | Coverage: 0.03% |
---|
Function: clover_unpack_message_left_.DIR.OMP.PARALLEL.LOOP.2.split99 | Module: exec | Source: pack_kernel.f90:108-116 | Coverage: 0.03% |
---|
/home/eoseret/qaas_runs_CPU_9468/171-137-7698/intel/CloverLeafFC/build/CloverLeafFC/CloverLeaf_ref/kernels/pack_kernel.f90: 108 - 116 |
-------------------------------------------------------------------------------- |
108: !$OMP PARALLEL DO PRIVATE(index) |
109: DO k=y_min-depth,y_max+y_inc+depth |
110: !$OMP SIMD |
111: DO j=1,depth |
112: index= buffer_offset + j+(k+depth-1)*depth |
113: field(x_min-j,k)=left_rcv_buffer(index) |
114: ENDDO |
115: ENDDO |
116: !$OMP END PARALLEL DO |
0x449040 PUSH %RBP |
0x449041 MOV %RSP,%RBP |
0x449044 PUSH %R15 |
0x449046 PUSH %R14 |
0x449048 PUSH %R13 |
0x44904a PUSH %R12 |
0x44904c PUSH %RBX |
0x44904d SUB $0x48,%RSP |
0x449051 MOV %R8,-0x58(%RBP) |
0x449055 MOV %RCX,-0x70(%RBP) |
0x449059 MOV 0x28(%RBP),%EAX |
0x44905c MOVL $0,-0x4c(%RBP) |
0x449063 TEST %EAX,%EAX |
0x449065 JS 4490c6 |
0x449067 MOV %RDX,%RBX |
0x44906a MOV (%RDI),%ESI |
0x44906c MOVL $0,-0x34(%RBP) |
0x449073 MOV %EAX,-0x30(%RBP) |
0x449076 MOVL $0x1,-0x48(%RBP) |
0x44907d SUB $0x8,%RSP |
0x449081 LEA -0x48(%RBP),%RAX |
0x449085 LEA -0x4c(%RBP),%RCX |
0x449089 LEA -0x34(%RBP),%R8 |
0x44908d LEA -0x30(%RBP),%R9 |
0x449091 MOV $0x54e530,%EDI |
0x449096 MOV %ESI,-0x44(%RBP) |
0x449099 MOV $0x22,%EDX |
0x44909e PUSH $0x1 |
0x4490a0 PUSH $0x1 |
0x4490a2 PUSH %RAX |
0x4490a3 CALL 404670 <__kmpc_for_static_init_4@plt> |
0x4490a8 ADD $0x20,%RSP |
0x4490ac MOV -0x34(%RBP),%EAX |
0x4490af MOV -0x30(%RBP),%EDX |
0x4490b2 SUB %EAX,%EDX |
0x4490b4 JAE 449100 |
0x4490b6 MOV $0x54e550,%EDI |
0x4490bb MOV -0x44(%RBP),%ESI |
0x4490be VZEROUPPER |
0x4490c1 CALL 404230 <__kmpc_for_static_fini@plt> |
0x4490c6 ADD $0x48,%RSP |
0x4490ca POP %RBX |
0x4490cb POP %R12 |
0x4490cd POP %R13 |
0x4490cf POP %R14 |
0x4490d1 POP %R15 |
0x4490d3 POP %RBP |
0x4490d4 RET |
0x4490d5 NOPW %CS:(%RAX,%RAX,1) |
0x4490e4 NOPW %CS:(%RAX,%RAX,1) |
0x4490f3 NOPW %CS:(%RAX,%RAX,1) |
0x449100 MOV %RAX,%RCX |
0x449103 MOV -0x58(%RBP),%RAX |
0x449107 MOV (%RAX),%ESI |
0x449109 LEA -0x1(%RCX,%RBX,1),%EDI |
0x44910d XOR %R8D,%R8D |
0x449110 ADD %EBX,%ECX |
0x449112 MOV %RCX,-0x68(%RBP) |
0x449116 VMOVDQA64 0xc18e0(%RIP),%ZMM0 |
0x449120 VMOVDQA64 0xc1916(%RIP),%ZMM1 |
0x44912a VMOVDQA64 0xc18cc(%RIP),%ZMM2 |
0x449134 MOV %EDX,-0x2c(%RBP) |
0x449137 JMP 449158 |
0x449139 NOPL (%RAX) |
(438) 0x449140 MOV %ESI,%R10D |
(438) 0x449143 LEA 0x1(%R8),%EAX |
(438) 0x449147 INC %EDI |
(438) 0x449149 MOV %R10D,%ESI |
(438) 0x44914c CMP %EDX,%R8D |
(438) 0x44914f MOV %EAX,%R8D |
(438) 0x449152 JE 4490b6 |
(438) 0x449158 TEST %ESI,%ESI |
(438) 0x44915a JLE 449140 |
(438) 0x44915c MOV -0x68(%RBP),%RAX |
(438) 0x449160 LEA (%RAX,%R8,1),%R11D |
(438) 0x449164 MOV -0x70(%RBP),%RAX |
(438) 0x449168 MOVSXD (%RAX),%RCX |
(438) 0x44916b MOV -0x58(%RBP),%RAX |
(438) 0x44916f MOV (%RAX),%R10D |
(438) 0x449172 MOV 0x10aa1f(%RIP),%R9 |
(438) 0x449179 MOV 0x10aa50(%RIP),%R13 |
(438) 0x449180 MOV 0x10(%RBP),%RBX |
(438) 0x449184 MOV (%RBX),%R15 |
(438) 0x449187 MOV 0x38(%RBX),%RAX |
(438) 0x44918b MOV %RAX,-0x40(%RBP) |
(438) 0x44918f MOV 0x18(%RBP),%RDX |
(438) 0x449193 MOVSXD (%RDX),%RAX |
(438) 0x449196 MOV 0x50(%RBX),%RDX |
(438) 0x44919a MOV %ESI,%EBX |
(438) 0x44919c MOV %RBX,%R12 |
(438) 0x44919f MOVSXD %R11D,%R14 |
(438) 0x4491a2 MOV $-0x8,%ESI |
(438) 0x4491a7 AND %RSI,%R12 |
(438) 0x4491aa JE 449280 |
(438) 0x4491b0 LEA (%R10,%RDI,1),%ESI |
(438) 0x4491b4 IMUL %R10D,%ESI |
(438) 0x4491b8 MOVSXD %ESI,%RSI |
(438) 0x4491bb ADD %RCX,%RSI |
(438) 0x4491be LEA -0x1(%R11,%R10,1),%R11D |
(438) 0x4491c3 MOV %R10,-0x60(%RBP) |
(438) 0x4491c7 IMUL %R10D,%R11D |
(438) 0x4491cb MOVSXD %R11D,%R11 |
(438) 0x4491ce ADD %RCX,%R11 |
(438) 0x4491d1 VPBROADCASTQ %R13,%ZMM5 |
(438) 0x4491d7 MOV -0x40(%RBP),%RCX |
(438) 0x4491db VPBROADCASTQ %RCX,%ZMM4 |
(438) 0x4491e1 MOV %RAX,-0x40(%RBP) |
(438) 0x4491e5 XOR %ECX,%ECX |
(438) 0x4491e7 NOPW (%RAX,%RAX,1) |
(439) 0x4491f0 LEA (%RSI,%RCX,1),%R13 |
(439) 0x4491f4 VPBROADCASTQ %R13,%ZMM6 |
(439) 0x4491fa VPADDQ %ZMM2,%ZMM6,%ZMM6 |
(439) 0x449200 VPMULLQ %ZMM6,%ZMM5,%ZMM6 |
(439) 0x449206 VXORPD %XMM7,%XMM7,%XMM7 |
(439) 0x44920a KXNORW %K0,%K0,%K1 |
(439) 0x44920e VGATHERQPD (%R9,%ZMM6,1),%ZMM7{%K1} |
(439) 0x449215 LEA 0x1(%R14),%R13 |
(439) 0x449219 IMUL %RDX,%R13 |
(439) 0x44921d VPBROADCASTQ %RAX,%ZMM6 |
(439) 0x449223 VPADDQ %ZMM1,%ZMM6,%ZMM6 |
(439) 0x449229 VPMULLQ %ZMM6,%ZMM4,%ZMM6 |
(439) 0x44922f LEA (%R15,%R13,1),%R10 |
(439) 0x449233 KXNORW %K0,%K0,%K1 |
(439) 0x449237 VSCATTERQPD %ZMM7,(%R10,%ZMM6,1){%K1} |
(439) 0x44923e ADD $0x8,%RCX |
(439) 0x449242 ADD $-0x8,%RAX |
(439) 0x449246 CMP %R12,%RCX |
(439) 0x449249 JB 4491f0 |
(438) 0x44924b CMP %RBX,%R12 |
(438) 0x44924e JNE 449300 |
(438) 0x449254 MOV -0x2c(%RBP),%EDX |
(438) 0x449257 MOV -0x60(%RBP),%R10 |
(438) 0x44925b JMP 449143 |
0x449260 NOPW %CS:(%RAX,%RAX,1) |
0x44926f NOPW %CS:(%RAX,%RAX,1) |
0x44927e XCHG %AX,%AX |
(438) 0x449280 VPBROADCASTQ %RBX,%ZMM8 |
(438) 0x449286 VPBROADCASTQ %R9,%ZMM6 |
(438) 0x44928c LEA -0x1(%R11,%R10,1),%ESI |
(438) 0x449291 IMUL %R10D,%ESI |
(438) 0x449295 MOVSXD %ESI,%R11 |
(438) 0x449298 ADD %RCX,%R11 |
(438) 0x44929b VPBROADCASTQ %R13,%ZMM5 |
(438) 0x4492a1 VPBROADCASTQ %R15,%ZMM7 |
(438) 0x4492a7 INC %R14 |
(438) 0x4492aa IMUL %R14,%RDX |
(438) 0x4492ae VPBROADCASTQ %RDX,%ZMM9 |
(438) 0x4492b4 VPBROADCASTQ %RAX,%ZMM10 |
(438) 0x4492ba MOV -0x40(%RBP),%RAX |
(438) 0x4492be VPBROADCASTQ %RAX,%ZMM4 |
(438) 0x4492c4 XOR %R12D,%R12D |
(438) 0x4492c7 MOV -0x2c(%RBP),%EDX |
(438) 0x4492ca JMP 449329 |
0x4492cc NOPW %CS:(%RAX,%RAX,1) |
0x4492db NOPW %CS:(%RAX,%RAX,1) |
0x4492ea NOPW %CS:(%RAX,%RAX,1) |
0x4492f9 NOPL (%RAX) |
(438) 0x449300 VPBROADCASTQ %R13,%ZMM9 |
(438) 0x449306 VPBROADCASTQ %R15,%ZMM7 |
(438) 0x44930c VPBROADCASTQ %R9,%ZMM6 |
(438) 0x449312 MOV -0x40(%RBP),%RAX |
(438) 0x449316 VPBROADCASTQ %RAX,%ZMM10 |
(438) 0x44931c VPBROADCASTQ %RBX,%ZMM8 |
(438) 0x449322 MOV -0x2c(%RBP),%EDX |
(438) 0x449325 MOV -0x60(%RBP),%R10 |
(438) 0x449329 VPBROADCASTQ %R12,%ZMM11 |
(438) 0x44932f VPSUBQ %ZMM11,%ZMM8,%ZMM8 |
(438) 0x449335 VPCMPNLEUQ %ZMM0,%ZMM8,%K1 |
(438) 0x44933c ADD %R12,%R11 |
(438) 0x44933f VPBROADCASTQ %R11,%ZMM8 |
(438) 0x449345 VPADDQ %ZMM0,%ZMM8,%ZMM8 |
(438) 0x44934b VPMULLQ %ZMM8,%ZMM5,%ZMM5 |
(438) 0x449351 VPADDQ %ZMM5,%ZMM6,%ZMM5 |
(438) 0x449357 KMOVQ %K1,%K2 |
(438) 0x44935c VPXOR %XMM6,%XMM6,%XMM6 |
(438) 0x449360 VGATHERQPD (,%ZMM5,1),%ZMM6{%K2} |
(438) 0x44936b VPADDQ %ZMM9,%ZMM7,%ZMM5 |
(438) 0x449371 VMOVAPD %ZMM6,%ZMM3{%K1} |
(438) 0x449377 VPSUBQ %ZMM11,%ZMM10,%ZMM6 |
(438) 0x44937d VPADDQ %ZMM1,%ZMM6,%ZMM6 |
(438) 0x449383 VPMULLQ %ZMM6,%ZMM4,%ZMM4 |
(438) 0x449389 VPADDQ %ZMM4,%ZMM5,%ZMM4 |
(438) 0x44938f VSCATTERQPD %ZMM3,(,%ZMM4,1){%K1} |
(438) 0x44939a JMP 449143 |
0x44939f NOPW %CS:(%RAX,%RAX,1) |
0x4493a9 NOPW %CS:(%RAX,%RAX,1) |
0x4493b3 NOPW %CS:(%RAX,%RAX,1) |
0x4493bd NOPL (%RAX) |
Path / |
Source file and lines | pack_kernel.f90:108-116 |
Module | exec |
nb instructions | 75 |
nb uops | 78 |
loop length | 373 |
used x86 registers | 14 |
used mmx registers | 0 |
used xmm registers | 0 |
used ymm registers | 0 |
used zmm registers | 3 |
nb stack references | 10 |
micro-operation queue | 13.00 cycles |
front end | 13.00 cycles |
P0 | P1 | P2 | P3 | P4 | P5 | P6 | P7 | P8 | P9 | P10 | P11 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|
uops | 2.10 | 2.00 | 5.67 | 5.67 | 10.00 | 2.00 | 1.90 | 10.00 | 10.00 | 10.00 | 2.00 | 5.67 |
cycles | 2.10 | 2.20 | 5.67 | 5.67 | 10.00 | 2.00 | 1.90 | 10.00 | 10.00 | 10.00 | 2.00 | 5.67 |
Cycles executing div or sqrt instructions | NA |
FE+BE cycles | 12.62-12.68 |
Stall cycles | 0.00 |
Front-end | 13.00 |
Dispatch | 10.00 |
Overall L1 | 13.00 |
all | 16% |
load | 42% |
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 | 25% |
all | 20% |
load | 46% |
store | 8% |
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 | 10% |
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 $0x48,%RSP | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
MOV %R8,-0x58(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
MOV %RCX,-0x70(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
MOV 0x28(%RBP),%EAX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOVL $0,-0x4c(%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 4490c6 <pack_kernel_module_mp_clover_unpack_message_left_.DIR.OMP.PARALLEL.LOOP.2.split99+0x86> | 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,-0x34(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
MOV %EAX,-0x30(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
MOVL $0x1,-0x48(%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 -0x48(%RBP),%RAX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
LEA -0x4c(%RBP),%RCX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
LEA -0x34(%RBP),%R8 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
LEA -0x30(%RBP),%R9 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
MOV $0x54e530,%EDI | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
MOV %ESI,-0x44(%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 404670 <__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 -0x34(%RBP),%EAX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV -0x30(%RBP),%EDX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
SUB %EAX,%EDX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
JAE 449100 <pack_kernel_module_mp_clover_unpack_message_left_.DIR.OMP.PARALLEL.LOOP.2.split99+0xc0> | 1 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0.50 |
MOV $0x54e550,%EDI | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
MOV -0x44(%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 404230 <__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 $0x48,%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 %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
MOV %RAX,%RCX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
MOV -0x58(%RBP),%RAX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV (%RAX),%ESI | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
LEA -0x1(%RCX,%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,%ECX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
MOV %RCX,-0x68(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
VMOVDQA64 0xc18e0(%RIP),%ZMM0 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0-1 | 0.50 |
VMOVDQA64 0xc1916(%RIP),%ZMM1 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0-1 | 0.50 |
VMOVDQA64 0xc18cc(%RIP),%ZMM2 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0-1 | 0.50 |
MOV %EDX,-0x2c(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
JMP 449158 <pack_kernel_module_mp_clover_unpack_message_left_.DIR.OMP.PARALLEL.LOOP.2.split99+0x118> | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 5.84 |
NOPL (%RAX) | 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 |
XCHG %AX,%AX | 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 |
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:108-116 |
Module | exec |
nb instructions | 75 |
nb uops | 78 |
loop length | 373 |
used x86 registers | 14 |
used mmx registers | 0 |
used xmm registers | 0 |
used ymm registers | 0 |
used zmm registers | 3 |
nb stack references | 10 |
micro-operation queue | 13.00 cycles |
front end | 13.00 cycles |
P0 | P1 | P2 | P3 | P4 | P5 | P6 | P7 | P8 | P9 | P10 | P11 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|
uops | 2.10 | 2.00 | 5.67 | 5.67 | 10.00 | 2.00 | 1.90 | 10.00 | 10.00 | 10.00 | 2.00 | 5.67 |
cycles | 2.10 | 2.20 | 5.67 | 5.67 | 10.00 | 2.00 | 1.90 | 10.00 | 10.00 | 10.00 | 2.00 | 5.67 |
Cycles executing div or sqrt instructions | NA |
FE+BE cycles | 12.62-12.68 |
Stall cycles | 0.00 |
Front-end | 13.00 |
Dispatch | 10.00 |
Overall L1 | 13.00 |
all | 16% |
load | 42% |
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 | 25% |
all | 20% |
load | 46% |
store | 8% |
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 | 10% |
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 $0x48,%RSP | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
MOV %R8,-0x58(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
MOV %RCX,-0x70(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
MOV 0x28(%RBP),%EAX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOVL $0,-0x4c(%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 4490c6 <pack_kernel_module_mp_clover_unpack_message_left_.DIR.OMP.PARALLEL.LOOP.2.split99+0x86> | 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,-0x34(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
MOV %EAX,-0x30(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
MOVL $0x1,-0x48(%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 -0x48(%RBP),%RAX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
LEA -0x4c(%RBP),%RCX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
LEA -0x34(%RBP),%R8 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
LEA -0x30(%RBP),%R9 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
MOV $0x54e530,%EDI | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
MOV %ESI,-0x44(%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 404670 <__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 -0x34(%RBP),%EAX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV -0x30(%RBP),%EDX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
SUB %EAX,%EDX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
JAE 449100 <pack_kernel_module_mp_clover_unpack_message_left_.DIR.OMP.PARALLEL.LOOP.2.split99+0xc0> | 1 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0.50 |
MOV $0x54e550,%EDI | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
MOV -0x44(%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 404230 <__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 $0x48,%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 %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
MOV %RAX,%RCX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
MOV -0x58(%RBP),%RAX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV (%RAX),%ESI | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
LEA -0x1(%RCX,%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,%ECX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
MOV %RCX,-0x68(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
VMOVDQA64 0xc18e0(%RIP),%ZMM0 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0-1 | 0.50 |
VMOVDQA64 0xc1916(%RIP),%ZMM1 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0-1 | 0.50 |
VMOVDQA64 0xc18cc(%RIP),%ZMM2 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0-1 | 0.50 |
MOV %EDX,-0x2c(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
JMP 449158 <pack_kernel_module_mp_clover_unpack_message_left_.DIR.OMP.PARALLEL.LOOP.2.split99+0x118> | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 5.84 |
NOPL (%RAX) | 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 |
XCHG %AX,%AX | 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 |
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_left_.DIR.OMP.PARALLEL.LOOP.2.split99– | 0.03 | 0.01 |
▼Loop 438 - pack_kernel.f90:109-113 - exec– | 0.03 | 0.02 |
○Loop 439 - pack_kernel.f90:111-113 - exec | 0 | 0 |