Loop Id: 951 | Module: exec | Source: par_multi_interp.c:917-997 [...] | Coverage: 0.07% |
---|
Loop Id: 951 | Module: exec | Source: par_multi_interp.c:917-997 [...] | Coverage: 0.07% |
---|
0x443010 MOV -0x80(%RBP),%RSI |
0x443014 INC %RSI |
0x443017 CMP -0xd0(%RBP),%RSI |
0x44301e JGE 443431 |
0x443024 MOV -0xe0(%RBP),%RDX |
0x44302b MOV %RSI,-0x80(%RBP) |
0x44302f MOV (%RDX,%RSI,8),%R8 |
0x443033 MOV -0x70(%RBP),%RDI |
0x443037 MOV %RAX,(%RDI,%R8,8) |
0x44303b MOV -0x50(%RBP),%RDX |
0x44303f MOV %RCX,(%RDX,%R8,8) |
0x443043 MOV -0xa8(%RBP),%RDX |
0x44304a MOV (%RDX,%R8,8),%RSI |
0x44304e CMP 0x8(%RDX,%R8,8),%RSI |
0x443053 JGE 443340 |
0x443059 MOV -0x118(%RBP),%RDX |
0x443060 MOV (%RDX),%RBX |
0x443063 MOV %RBX,-0x68(%RBP) |
0x443067 JMP 44308d |
(954) 0x443070 MOV -0x70(%RBP),%RDI |
(954) 0x443074 MOV -0x30(%RBP),%RSI |
(954) 0x443078 INC %RSI |
(954) 0x44307b MOV -0xa8(%RBP),%RDX |
(954) 0x443082 CMP 0x8(%RDX,%R8,8),%RSI |
(954) 0x443087 JGE 443340 |
(954) 0x44308d MOV -0x140(%RBP),%RDX |
(954) 0x443094 MOV (%RDX,%RSI,8),%R12 |
(954) 0x443098 MOV (%R14),%RDX |
(954) 0x44309b DEC %RDX |
(954) 0x44309e CMP %RDX,(%RBX,%R12,8) |
(954) 0x4430a2 JNE 443078 |
(954) 0x4430a4 MOV %RSI,-0x30(%RBP) |
(954) 0x4430a8 MOV -0xe8(%RBP),%RDX |
(954) 0x4430af MOV (%RDX),%RDX |
(954) 0x4430b2 MOV 0x8(%RDX,%R12,8),%RSI |
(954) 0x4430b7 TEST %RSI,%RSI |
(954) 0x4430ba JLE 44310f |
(954) 0x4430bc MOV %R12,-0x38(%RBP) |
(954) 0x4430c0 MOV (%RDI,%R12,8),%RDI |
(954) 0x4430c4 ADD %RDI,%RSI |
(954) 0x4430c7 MOV -0x48(%RBP),%R9 |
(954) 0x4430cb MOV (%R9),%R10 |
(954) 0x4430ce LEA 0x1(%RDI),%R9 |
(954) 0x4430d2 CMP %R9,%RSI |
(954) 0x4430d5 CMOVLE %R9,%RSI |
(954) 0x4430d9 MOV %RSI,%R9 |
(954) 0x4430dc SUB %RDI,%R9 |
(954) 0x4430df CMP $0x4,%R9 |
(954) 0x4430e3 MOV %R9,-0x88(%RBP) |
(954) 0x4430ea JAE 4431ac |
(954) 0x4430f0 MOV -0x88(%RBP),%R11 |
(954) 0x4430f7 MOV %R11,%R9 |
(954) 0x4430fa AND $-0x4,%R9 |
(954) 0x4430fe CMP %R11,%R9 |
(954) 0x443101 JNE 44325d |
(954) 0x443107 MOV -0x68(%RBP),%RBX |
(954) 0x44310b MOV -0x38(%RBP),%R12 |
(954) 0x44310f MOV -0xf0(%RBP),%RDX |
(954) 0x443116 MOV (%RDX),%RDX |
(954) 0x443119 MOV 0x8(%RDX,%R12,8),%RSI |
(954) 0x44311e TEST %RSI,%RSI |
(954) 0x443121 JLE 443070 |
(954) 0x443127 MOV -0x50(%RBP),%RDI |
(954) 0x44312b MOV (%RDI,%R12,8),%RDI |
(954) 0x44312f ADD %RDI,%RSI |
(954) 0x443132 MOV -0x90(%RBP),%R9 |
(954) 0x443139 MOV (%R9),%R10 |
(954) 0x44313c LEA 0x1(%RDI),%R9 |
(954) 0x443140 CMP %R9,%RSI |
(954) 0x443143 CMOVLE %R9,%RSI |
(954) 0x443147 MOV %RSI,%R9 |
(954) 0x44314a SUB %RDI,%R9 |
(954) 0x44314d CMP $0x4,%R9 |
(954) 0x443151 MOV %R9,-0x38(%RBP) |
(954) 0x443155 JAE 44329c |
(954) 0x44315b MOV -0x38(%RBP),%R11 |
(954) 0x44315f MOV %R11,%R9 |
(954) 0x443162 AND $-0x4,%R9 |
(954) 0x443166 CMP %R11,%R9 |
(954) 0x443169 JE 443070 |
(954) 0x44316f ADD %R9,%RDI |
(954) 0x443172 JMP 44318c |
(955) 0x443180 INC %RDI |
(955) 0x443183 CMP %RDI,%RSI |
(955) 0x443186 JE 443070 |
(955) 0x44318c MOV (%R14),%R9 |
(955) 0x44318f MOV -0x8(%R10,%R9,8),%R9 |
(955) 0x443194 MOV (%R9,%RDI,8),%R9 |
(955) 0x443198 CMP %R8,(%R15,%R9,8) |
(955) 0x44319c JE 443180 |
(955) 0x44319e INC %RCX |
(955) 0x4431a1 INCQ 0x8(%RDX,%R8,8) |
(955) 0x4431a6 MOV %R8,(%R15,%R9,8) |
(955) 0x4431aa JMP 443180 |
(954) 0x4431ac MOV %R9,%R13 |
(954) 0x4431af SHR $0x2,%R13 |
(954) 0x4431b3 LEA (,%RDI,8),%R12 |
(954) 0x4431bb MOV -0x58(%RBP),%RBX |
(954) 0x4431bf JMP 4431dd |
(958) 0x4431d0 ADD $0x20,%R12 |
(958) 0x4431d4 DEC %R13 |
(958) 0x4431d7 JE 4430f0 |
(958) 0x4431dd MOV (%R14),%R9 |
(958) 0x4431e0 MOV -0x8(%R10,%R9,8),%R11 |
(958) 0x4431e5 MOV (%R11,%R12,1),%R9 |
(958) 0x4431e9 CMP %R8,(%RBX,%R9,8) |
(958) 0x4431ed JE 443203 |
(958) 0x4431ef INCQ 0x8(%RDX,%R8,8) |
(958) 0x4431f4 INC %RAX |
(958) 0x4431f7 MOV %R8,(%RBX,%R9,8) |
(958) 0x4431fb MOV (%R14),%R9 |
(958) 0x4431fe MOV -0x8(%R10,%R9,8),%R11 |
(958) 0x443203 MOV 0x8(%R11,%R12,1),%R9 |
(958) 0x443208 CMP %R8,(%RBX,%R9,8) |
(958) 0x44320c JE 443222 |
(958) 0x44320e INCQ 0x8(%RDX,%R8,8) |
(958) 0x443213 INC %RAX |
(958) 0x443216 MOV %R8,(%RBX,%R9,8) |
(958) 0x44321a MOV (%R14),%R9 |
(958) 0x44321d MOV -0x8(%R10,%R9,8),%R11 |
(958) 0x443222 MOV 0x10(%R11,%R12,1),%R9 |
(958) 0x443227 CMP %R8,(%RBX,%R9,8) |
(958) 0x44322b JE 443241 |
(958) 0x44322d INCQ 0x8(%RDX,%R8,8) |
(958) 0x443232 INC %RAX |
(958) 0x443235 MOV %R8,(%RBX,%R9,8) |
(958) 0x443239 MOV (%R14),%R9 |
(958) 0x44323c MOV -0x8(%R10,%R9,8),%R11 |
(958) 0x443241 MOV 0x18(%R11,%R12,1),%R9 |
(958) 0x443246 CMP %R8,(%RBX,%R9,8) |
(958) 0x44324a JE 4431d0 |
(958) 0x44324c INC %RAX |
(958) 0x44324f INCQ 0x8(%RDX,%R8,8) |
(958) 0x443254 MOV %R8,(%RBX,%R9,8) |
(958) 0x443258 JMP 4431d0 |
(954) 0x44325d ADD %R9,%RDI |
(954) 0x443260 MOV -0x68(%RBP),%RBX |
(954) 0x443264 MOV -0x38(%RBP),%R12 |
(954) 0x443268 MOV -0x58(%RBP),%R11 |
(954) 0x44326c JMP 44327c |
(957) 0x443270 INC %RDI |
(957) 0x443273 CMP %RDI,%RSI |
(957) 0x443276 JE 44310f |
(957) 0x44327c MOV (%R14),%R9 |
(957) 0x44327f MOV -0x8(%R10,%R9,8),%R9 |
(957) 0x443284 MOV (%R9,%RDI,8),%R9 |
(957) 0x443288 CMP %R8,(%R11,%R9,8) |
(957) 0x44328c JE 443270 |
(957) 0x44328e INC %RAX |
(957) 0x443291 INCQ 0x8(%RDX,%R8,8) |
(957) 0x443296 MOV %R8,(%R11,%R9,8) |
(957) 0x44329a JMP 443270 |
(954) 0x44329c MOV %R9,%R12 |
(954) 0x44329f SHR $0x2,%R12 |
(954) 0x4432a3 LEA (,%RDI,8),%R13 |
(954) 0x4432ab JMP 4432bd |
(956) 0x4432b0 ADD $0x20,%R13 |
(956) 0x4432b4 DEC %R12 |
(956) 0x4432b7 JE 44315b |
(956) 0x4432bd MOV (%R14),%R9 |
(956) 0x4432c0 MOV -0x8(%R10,%R9,8),%R11 |
(956) 0x4432c5 MOV (%R11,%R13,1),%R9 |
(956) 0x4432c9 CMP %R8,(%R15,%R9,8) |
(956) 0x4432cd JE 4432e3 |
(956) 0x4432cf INCQ 0x8(%RDX,%R8,8) |
(956) 0x4432d4 INC %RCX |
(956) 0x4432d7 MOV %R8,(%R15,%R9,8) |
(956) 0x4432db MOV (%R14),%R9 |
(956) 0x4432de MOV -0x8(%R10,%R9,8),%R11 |
(956) 0x4432e3 MOV 0x8(%R11,%R13,1),%R9 |
(956) 0x4432e8 CMP %R8,(%R15,%R9,8) |
(956) 0x4432ec JE 443302 |
(956) 0x4432ee INCQ 0x8(%RDX,%R8,8) |
(956) 0x4432f3 INC %RCX |
(956) 0x4432f6 MOV %R8,(%R15,%R9,8) |
(956) 0x4432fa MOV (%R14),%R9 |
(956) 0x4432fd MOV -0x8(%R10,%R9,8),%R11 |
(956) 0x443302 MOV 0x10(%R11,%R13,1),%R9 |
(956) 0x443307 CMP %R8,(%R15,%R9,8) |
(956) 0x44330b JE 443321 |
(956) 0x44330d INCQ 0x8(%RDX,%R8,8) |
(956) 0x443312 INC %RCX |
(956) 0x443315 MOV %R8,(%R15,%R9,8) |
(956) 0x443319 MOV (%R14),%R9 |
(956) 0x44331c MOV -0x8(%R10,%R9,8),%R11 |
(956) 0x443321 MOV 0x18(%R11,%R13,1),%R9 |
(956) 0x443326 CMP %R8,(%R15,%R9,8) |
(956) 0x44332a JE 4432b0 |
(956) 0x44332c INC %RCX |
(956) 0x44332f INCQ 0x8(%RDX,%R8,8) |
(956) 0x443334 MOV %R8,(%R15,%R9,8) |
(956) 0x443338 JMP 4432b0 |
0x443340 MOV -0xa0(%RBP),%RSI |
0x443347 MOV (%RSI,%R8,8),%RDX |
0x44334b MOV 0x8(%RSI,%R8,8),%RDI |
0x443350 JMP 44336f |
(952) 0x443360 MOV -0xa0(%RBP),%RSI |
(952) 0x443367 MOV 0x8(%RSI,%R8,8),%RDI |
(952) 0x44336c INC %RDX |
(952) 0x44336f CMP %RDI,%RDX |
(952) 0x443372 JGE 443010 |
(952) 0x443378 MOV -0x148(%RBP),%RSI |
(952) 0x44337f MOV (%RSI,%RDX,8),%R9 |
(952) 0x443383 MOV (%R14),%RSI |
(952) 0x443386 DEC %RSI |
(952) 0x443389 MOV -0x138(%RBP),%R10 |
(952) 0x443390 CMP %RSI,(%R10,%R9,8) |
(952) 0x443394 JNE 44336c |
(952) 0x443396 MOV -0x130(%RBP),%RSI |
(952) 0x44339d MOV 0x8(%RSI,%R9,8),%RSI |
(952) 0x4433a2 TEST %RSI,%RSI |
(952) 0x4433a5 JLE 44336c |
(952) 0x4433a7 MOV -0x120(%RBP),%RDI |
(952) 0x4433ae MOV (%RDI,%R9,8),%RDI |
(952) 0x4433b2 ADD %RDI,%RSI |
(952) 0x4433b5 MOV -0x128(%RBP),%R9 |
(952) 0x4433bc MOV (%R9),%R9 |
(952) 0x4433bf JMP 4433e7 |
(953) 0x4433d0 MOV (%R11),%R11 |
(953) 0x4433d3 INCQ 0x8(%R11,%R8,8) |
(953) 0x4433d8 MOV %R8,(%R10) |
(953) 0x4433db INC %RDI |
(953) 0x4433de CMP %RSI,%RDI |
(953) 0x4433e1 JGE 443360 |
(953) 0x4433e7 MOV (%R14),%R10 |
(953) 0x4433ea MOV (%R9,%R10,8),%R10 |
(953) 0x4433ee MOV (%R10,%RDI,8),%R10 |
(953) 0x4433f2 TEST %R10,%R10 |
(953) 0x4433f5 JS 443410 |
(953) 0x4433f7 CMP %R8,(%R15,%R10,8) |
(953) 0x4433fb JE 4433db |
(953) 0x4433fd LEA (%R15,%R10,8),%R10 |
(953) 0x443401 INC %RCX |
(953) 0x443404 MOV -0xf0(%RBP),%R11 |
(953) 0x44340b JMP 4433d0 |
(953) 0x443410 NOT %R10 |
(953) 0x443413 MOV -0x58(%RBP),%R11 |
(953) 0x443417 CMP %R8,(%R11,%R10,8) |
(953) 0x44341b JE 4433db |
(953) 0x44341d LEA (%R11,%R10,8),%R10 |
(953) 0x443421 INC %RAX |
(953) 0x443424 MOV -0xe8(%RBP),%R11 |
(953) 0x44342b JMP 4433d0 |
/scratch_na/users/xoserete/qaas_runs/171-415-3661/intel/AMG/build/AMG/AMG/parcsr_ls/par_multi_interp.c: 917 - 997 |
-------------------------------------------------------------------------------- |
917: for (i=0; i < n_coarse; i++) |
[...] |
939: for (i=thread_start; i < thread_stop; i++) |
940: { |
941: i1 = pass_array[i]; |
942: P_diag_start[i1] = cnt_nz; |
943: P_offd_start[i1] = cnt_nz_offd; |
944: for (j=S_diag_i[i1]; j < S_diag_i[i1+1]; j++) |
945: { |
946: j1 = S_diag_j[j]; |
947: if (assigned[j1] == pass-1) |
948: { |
949: j_start = P_diag_start[j1]; |
950: j_end = j_start+P_diag_i[j1+1]; |
951: for (k=j_start; k < j_end; k++) |
952: { |
953: k1 = P_diag_pass[pass-1][k]; |
954: if (P_marker[k1] != i1) |
955: { |
956: cnt_nz++; |
957: P_diag_i[i1+1]++; |
958: P_marker[k1] = i1; |
959: } |
960: } |
961: j_start = P_offd_start[j1]; |
962: j_end = j_start+P_offd_i[j1+1]; |
963: for (k=j_start; k < j_end; k++) |
964: { |
965: k1 = P_offd_pass[pass-1][k]; |
966: if (P_marker_offd[k1] != i1) |
967: { |
968: cnt_nz_offd++; |
969: P_offd_i[i1+1]++; |
970: P_marker_offd[k1] = i1; |
[...] |
976: for (j=S_offd_i[i1]; j < S_offd_i[i1+1]; j++) |
977: { |
978: j1 = S_offd_j[j]; |
979: if (assigned_offd[j1] == pass-1) |
980: { |
981: j_start = Pext_start[j1]; |
982: j_end = j_start+Pext_i[j1+1]; |
983: for (k=j_start; k < j_end; k++) |
984: { |
985: k1 = Pext_pass[pass][k]; |
986: if (k1 < 0) |
987: { |
988: if (P_marker[-k1-1] != i1) |
989: { |
990: cnt_nz++; |
991: P_diag_i[i1+1]++; |
992: P_marker[-k1-1] = i1; |
993: } |
994: } |
995: else if (P_marker_offd[k1] != i1) |
996: { |
997: cnt_nz_offd++; |
Coverage (%) | Name | Source Location | Module |
---|---|---|---|
►100.00+ | __kmp_invoke_microtask | libiomp5.so | |
○ | __kmp_invoke_task_func | libiomp5.so |
Path / |
Metric | Value |
---|---|
CQA speedup if no scalar integer | 1.00 |
CQA speedup if FP arith vectorized | 1.00 |
CQA speedup if fully vectorized | 8.00 |
CQA speedup if no inter-iteration dependency | NA |
CQA speedup if next bottleneck killed | 1.17 |
Bottlenecks | P2, P3, P11, |
Function | hypre_BoomerAMGBuildMultipass.extracted.34 |
Source | par_multi_interp.c:939-944,par_multi_interp.c:947-947,par_multi_interp.c:970-970,par_multi_interp.c:976-976 |
Source loop unroll info | NA |
Source loop unroll confidence level | NA |
Unroll/vectorization loop type | NA |
Unroll factor | NA |
CQA cycles | 4.67 |
CQA cycles if no scalar integer | 4.67 |
CQA cycles if FP arith vectorized | 4.67 |
CQA cycles if fully vectorized | 0.58 |
Front-end cycles | 4.00 |
DIV/SQRT cycles | 1.00 |
P0 cycles | 0.80 |
P1 cycles | 4.67 |
P2 cycles | 4.67 |
P3 cycles | 2.00 |
P4 cycles | 0.60 |
P5 cycles | 1.00 |
P6 cycles | 2.00 |
P7 cycles | 2.00 |
P8 cycles | 2.00 |
P9 cycles | 0.60 |
P10 cycles | 4.67 |
P11 cycles | 0.00 |
Inter-iter dependencies cycles | NA |
FE+BE cycles (UFS) | 5.51 |
Stall cycles (UFS) | 1.36 |
Nb insns | 23.00 |
Nb uops | 23.00 |
Nb loads | 14.00 |
Nb stores | 4.00 |
Nb stack references | 9.00 |
FLOP/cycle | 0.00 |
Nb FLOP add-sub | 0.00 |
Nb FLOP mul | 0.00 |
Nb FLOP fma | 0.00 |
Nb FLOP div | 0.00 |
Nb FLOP rcp | 0.00 |
Nb FLOP sqrt | 0.00 |
Nb FLOP rsqrt | 0.00 |
Bytes/cycle | 30.86 |
Bytes prefetched | 0.00 |
Bytes loaded | 112.00 |
Bytes stored | 32.00 |
Stride 0 | NA |
Stride 1 | NA |
Stride n | NA |
Stride unknown | NA |
Stride indirect | NA |
Vectorization ratio all | 0.00 |
Vectorization ratio load | 0.00 |
Vectorization ratio store | 0.00 |
Vectorization ratio mul | NA |
Vectorization ratio add_sub | NA |
Vectorization ratio fma | NA |
Vectorization ratio div_sqrt | NA |
Vectorization ratio other | 0.00 |
Vector-efficiency ratio all | 12.50 |
Vector-efficiency ratio load | 12.50 |
Vector-efficiency ratio store | 12.50 |
Vector-efficiency ratio mul | NA |
Vector-efficiency ratio add_sub | NA |
Vector-efficiency ratio fma | NA |
Vector-efficiency ratio div_sqrt | NA |
Vector-efficiency ratio other | 12.50 |
Metric | Value |
---|---|
CQA speedup if no scalar integer | 1.00 |
CQA speedup if FP arith vectorized | 1.00 |
CQA speedup if fully vectorized | 8.00 |
CQA speedup if no inter-iteration dependency | NA |
CQA speedup if next bottleneck killed | 1.17 |
Bottlenecks | P2, P3, P11, |
Function | hypre_BoomerAMGBuildMultipass.extracted.34 |
Source | par_multi_interp.c:939-944,par_multi_interp.c:947-947,par_multi_interp.c:970-970,par_multi_interp.c:976-976 |
Source loop unroll info | NA |
Source loop unroll confidence level | NA |
Unroll/vectorization loop type | NA |
Unroll factor | NA |
CQA cycles | 4.67 |
CQA cycles if no scalar integer | 4.67 |
CQA cycles if FP arith vectorized | 4.67 |
CQA cycles if fully vectorized | 0.58 |
Front-end cycles | 4.00 |
DIV/SQRT cycles | 1.00 |
P0 cycles | 0.80 |
P1 cycles | 4.67 |
P2 cycles | 4.67 |
P3 cycles | 2.00 |
P4 cycles | 0.60 |
P5 cycles | 1.00 |
P6 cycles | 2.00 |
P7 cycles | 2.00 |
P8 cycles | 2.00 |
P9 cycles | 0.60 |
P10 cycles | 4.67 |
P11 cycles | 0.00 |
Inter-iter dependencies cycles | NA |
FE+BE cycles (UFS) | 5.51 |
Stall cycles (UFS) | 1.36 |
Nb insns | 23.00 |
Nb uops | 23.00 |
Nb loads | 14.00 |
Nb stores | 4.00 |
Nb stack references | 9.00 |
FLOP/cycle | 0.00 |
Nb FLOP add-sub | 0.00 |
Nb FLOP mul | 0.00 |
Nb FLOP fma | 0.00 |
Nb FLOP div | 0.00 |
Nb FLOP rcp | 0.00 |
Nb FLOP sqrt | 0.00 |
Nb FLOP rsqrt | 0.00 |
Bytes/cycle | 30.86 |
Bytes prefetched | 0.00 |
Bytes loaded | 112.00 |
Bytes stored | 32.00 |
Stride 0 | NA |
Stride 1 | NA |
Stride n | NA |
Stride unknown | NA |
Stride indirect | NA |
Vectorization ratio all | 0.00 |
Vectorization ratio load | 0.00 |
Vectorization ratio store | 0.00 |
Vectorization ratio mul | NA |
Vectorization ratio add_sub | NA |
Vectorization ratio fma | NA |
Vectorization ratio div_sqrt | NA |
Vectorization ratio other | 0.00 |
Vector-efficiency ratio all | 12.50 |
Vector-efficiency ratio load | 12.50 |
Vector-efficiency ratio store | 12.50 |
Vector-efficiency ratio mul | NA |
Vector-efficiency ratio add_sub | NA |
Vector-efficiency ratio fma | NA |
Vector-efficiency ratio div_sqrt | NA |
Vector-efficiency ratio other | 12.50 |
Path / |
Function | hypre_BoomerAMGBuildMultipass.extracted.34 |
Source file and lines | par_multi_interp.c:917-997 |
Module | exec |
nb instructions | 23 |
nb uops | 23 |
loop length | 107 |
used x86 registers | 8 |
used mmx registers | 0 |
used xmm registers | 0 |
used ymm registers | 0 |
used zmm registers | 0 |
nb stack references | 9 |
micro-operation queue | 4.00 cycles |
front end | 4.00 cycles |
P0 | P1 | P2 | P3 | P4 | P5 | P6 | P7 | P8 | P9 | P10 | P11 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|
uops | 1.00 | 0.80 | 4.67 | 4.67 | 2.00 | 0.60 | 1.00 | 2.00 | 2.00 | 2.00 | 0.60 | 4.67 |
cycles | 1.00 | 0.80 | 4.67 | 4.67 | 2.00 | 0.60 | 1.00 | 2.00 | 2.00 | 2.00 | 0.60 | 4.67 |
Cycles executing div or sqrt instructions | NA |
FE+BE cycles | 5.51 |
Stall cycles | 1.36 |
LM full (events) | 4.48 |
Front-end | 4.00 |
Dispatch | 4.67 |
Overall L1 | 4.67 |
all | 0% |
load | 0% |
store | 0% |
mul | NA (no mul vectorizable/vectorized instructions) |
add-sub | NA (no add-sub vectorizable/vectorized instructions) |
fma | NA (no fma vectorizable/vectorized instructions) |
div/sqrt | NA (no div/sqrt vectorizable/vectorized instructions) |
other | 0% |
all | 12% |
load | 12% |
store | 12% |
mul | NA (no mul vectorizable/vectorized instructions) |
add-sub | NA (no add-sub vectorizable/vectorized instructions) |
fma | NA (no fma vectorizable/vectorized instructions) |
div/sqrt | NA (no div/sqrt vectorizable/vectorized instructions) |
other | 12% |
Instruction | Nb FU | P0 | P1 | P2 | P3 | P4 | P5 | P6 | P7 | P8 | P9 | P10 | P11 | Latency | Recip. throughput |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
MOV -0x80(%RBP),%RSI | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
INC %RSI | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
CMP -0xd0(%RBP),%RSI | 1 | 0.20 | 0.20 | 0.33 | 0.33 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.33 | 1 | 0.33 |
JGE 443431 <hypre_BoomerAMGBuildMultipass.extracted.34+0x6c1> | 1 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0.50 |
MOV -0xe0(%RBP),%RDX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV %RSI,-0x80(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
MOV (%RDX,%RSI,8),%R8 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV -0x70(%RBP),%RDI | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV %RAX,(%RDI,%R8,8) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
MOV -0x50(%RBP),%RDX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV %RCX,(%RDX,%R8,8) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
MOV -0xa8(%RBP),%RDX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV (%RDX,%R8,8),%RSI | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
CMP 0x8(%RDX,%R8,8),%RSI | 1 | 0.20 | 0.20 | 0.33 | 0.33 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.33 | 1 | 0.33 |
JGE 443340 <hypre_BoomerAMGBuildMultipass.extracted.34+0x5d0> | 1 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0.50 |
MOV -0x118(%RBP),%RDX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV (%RDX),%RBX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV %RBX,-0x68(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
JMP 44308d <hypre_BoomerAMGBuildMultipass.extracted.34+0x31d> | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 5.84 |
MOV -0xa0(%RBP),%RSI | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV (%RSI,%R8,8),%RDX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV 0x8(%RSI,%R8,8),%RDI | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
JMP 44336f <hypre_BoomerAMGBuildMultipass.extracted.34+0x5ff> | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 5.84 |
Function | hypre_BoomerAMGBuildMultipass.extracted.34 |
Source file and lines | par_multi_interp.c:917-997 |
Module | exec |
nb instructions | 23 |
nb uops | 23 |
loop length | 107 |
used x86 registers | 8 |
used mmx registers | 0 |
used xmm registers | 0 |
used ymm registers | 0 |
used zmm registers | 0 |
nb stack references | 9 |
micro-operation queue | 4.00 cycles |
front end | 4.00 cycles |
P0 | P1 | P2 | P3 | P4 | P5 | P6 | P7 | P8 | P9 | P10 | P11 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|
uops | 1.00 | 0.80 | 4.67 | 4.67 | 2.00 | 0.60 | 1.00 | 2.00 | 2.00 | 2.00 | 0.60 | 4.67 |
cycles | 1.00 | 0.80 | 4.67 | 4.67 | 2.00 | 0.60 | 1.00 | 2.00 | 2.00 | 2.00 | 0.60 | 4.67 |
Cycles executing div or sqrt instructions | NA |
FE+BE cycles | 5.51 |
Stall cycles | 1.36 |
LM full (events) | 4.48 |
Front-end | 4.00 |
Dispatch | 4.67 |
Overall L1 | 4.67 |
all | 0% |
load | 0% |
store | 0% |
mul | NA (no mul vectorizable/vectorized instructions) |
add-sub | NA (no add-sub vectorizable/vectorized instructions) |
fma | NA (no fma vectorizable/vectorized instructions) |
div/sqrt | NA (no div/sqrt vectorizable/vectorized instructions) |
other | 0% |
all | 12% |
load | 12% |
store | 12% |
mul | NA (no mul vectorizable/vectorized instructions) |
add-sub | NA (no add-sub vectorizable/vectorized instructions) |
fma | NA (no fma vectorizable/vectorized instructions) |
div/sqrt | NA (no div/sqrt vectorizable/vectorized instructions) |
other | 12% |
Instruction | Nb FU | P0 | P1 | P2 | P3 | P4 | P5 | P6 | P7 | P8 | P9 | P10 | P11 | Latency | Recip. throughput |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
MOV -0x80(%RBP),%RSI | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
INC %RSI | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
CMP -0xd0(%RBP),%RSI | 1 | 0.20 | 0.20 | 0.33 | 0.33 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.33 | 1 | 0.33 |
JGE 443431 <hypre_BoomerAMGBuildMultipass.extracted.34+0x6c1> | 1 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0.50 |
MOV -0xe0(%RBP),%RDX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV %RSI,-0x80(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
MOV (%RDX,%RSI,8),%R8 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV -0x70(%RBP),%RDI | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV %RAX,(%RDI,%R8,8) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
MOV -0x50(%RBP),%RDX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV %RCX,(%RDX,%R8,8) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
MOV -0xa8(%RBP),%RDX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV (%RDX,%R8,8),%RSI | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
CMP 0x8(%RDX,%R8,8),%RSI | 1 | 0.20 | 0.20 | 0.33 | 0.33 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.33 | 1 | 0.33 |
JGE 443340 <hypre_BoomerAMGBuildMultipass.extracted.34+0x5d0> | 1 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0.50 |
MOV -0x118(%RBP),%RDX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV (%RDX),%RBX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV %RBX,-0x68(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
JMP 44308d <hypre_BoomerAMGBuildMultipass.extracted.34+0x31d> | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 5.84 |
MOV -0xa0(%RBP),%RSI | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV (%RSI,%R8,8),%RDX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV 0x8(%RSI,%R8,8),%RDI | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
JMP 44336f <hypre_BoomerAMGBuildMultipass.extracted.34+0x5ff> | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 5.84 |