Function: _Z16viscosity_kerneliiiiRN6clover8Buffer1DIdEES2_RNS_8Buffer2DIdEES5_S5_S5_S5_._omp_fn.0 | Module: exec | Source: viscosity.cpp:36-64 [...] | Coverage: 7.16% |
---|
Function: _Z16viscosity_kerneliiiiRN6clover8Buffer1DIdEES2_RNS_8Buffer2DIdEES5_S5_S5_S5_._omp_fn.0 | Module: exec | Source: viscosity.cpp:36-64 [...] | Coverage: 7.16% |
---|
/home/eoseret/qaas_runs_CPU_9468/171-112-9712/intel/CloverLeafCXX/build/CloverLeafCXX/src/omp/viscosity.cpp: 36 - 64 |
-------------------------------------------------------------------------------- |
36: #pragma omp parallel for simd collapse(2) |
37: for (int j = (y_min + 1); j < (y_max + 2); j++) { |
38: for (int i = (x_min + 1); i < (x_max + 2); i++) { |
39: double ugrad = (xvel0(i + 1, j + 0) + xvel0(i + 1, j + 1)) - (xvel0(i, j) + xvel0(i + 0, j + 1)); |
40: double vgrad = (yvel0(i + 0, j + 1) + yvel0(i + 1, j + 1)) - (yvel0(i, j) + yvel0(i + 1, j + 0)); |
41: double div = (celldx[i] * (ugrad) + celldy[j] * (vgrad)); |
42: double strain2 = 0.5 * (xvel0(i + 0, j + 1) + xvel0(i + 1, j + 1) - xvel0(i, j) - xvel0(i + 1, j + 0)) / celldy[j] + |
43: 0.5 * (yvel0(i + 1, j + 0) + yvel0(i + 1, j + 1) - yvel0(i, j) - yvel0(i + 0, j + 1)) / celldx[i]; |
44: double pgradx = (pressure(i + 1, j + 0) - pressure(i - 1, j + 0)) / (celldx[i] + celldx[i + 1]); |
45: double pgrady = (pressure(i + 0, j + 1) - pressure(i + 0, j - 1)) / (celldy[j] + celldy[j + 2]); |
46: double pgradx2 = pgradx * pgradx; |
47: double pgrady2 = pgrady * pgrady; |
48: double limiter = ((0.5 * (ugrad) / celldx[i]) * pgradx2 + (0.5 * (vgrad) / celldy[j]) * pgrady2 + strain2 * pgradx * pgrady) / |
49: std::fmax(pgradx2 + pgrady2, g_small); |
50: if ((limiter > 0.0) || (div >= 0.0)) { |
51: viscosity(i, j) = 0.0; |
52: } else { |
53: double dirx = 1.0; |
54: if (pgradx < 0.0) dirx = -1.0; |
55: pgradx = dirx * std::fmax(g_small, std::fabs(pgradx)); |
56: double diry = 1.0; |
57: if (pgradx < 0.0) diry = -1.0; |
58: pgrady = diry * std::fmax(g_small, std::fabs(pgrady)); |
59: double pgrad = std::sqrt(pgradx * pgradx + pgrady * pgrady); |
60: double xgrad = std::fabs(celldx[i] * pgrad / pgradx); |
61: double ygrad = std::fabs(celldy[j] * pgrad / pgrady); |
62: double grad = std::fmin(xgrad, ygrad); |
63: double grad2 = grad * grad; |
64: viscosity(i, j) = 2.0 * density0(i, j) * grad2 * limiter * limiter; |
/home/eoseret/qaas_runs_CPU_9468/171-112-9712/intel/CloverLeafCXX/build/CloverLeafCXX/src/omp/context.h: 46 - 69 |
-------------------------------------------------------------------------------- |
46: T &operator[](size_t i) const { return data[i]; } |
[...] |
69: T &operator()(size_t i, size_t j) const { return data[i + j * sizeX]; } |
0x45c1f0 PUSH %RBP |
0x45c1f1 MOV %RSP,%RBP |
0x45c1f4 PUSH %R15 |
0x45c1f6 PUSH %R14 |
0x45c1f8 PUSH %R13 |
0x45c1fa PUSH %R12 |
0x45c1fc PUSH %RBX |
0x45c1fd MOV %RDI,%RBX |
0x45c200 SUB $0x88,%RSP |
0x45c207 MOV 0x40(%RDI),%EAX |
0x45c20a MOV 0x44(%RDI),%ECX |
0x45c20d MOV 0x38(%RDI),%EDI |
0x45c210 MOV 0x3c(%RBX),%EDX |
0x45c213 ADD $0x2,%ECX |
0x45c216 LEA 0x1(%RAX),%R15D |
0x45c21a INC %EDI |
0x45c21c MOV %ECX,-0x78(%RBP) |
0x45c21f MOV %EDI,-0x7c(%RBP) |
0x45c222 CMP %ECX,%R15D |
0x45c225 JGE 45c650 |
0x45c22b MOV %ECX,%R13D |
0x45c22e LEA 0x2(%RDX),%R14D |
0x45c232 SUB %R15D,%R13D |
0x45c235 CMP %R14D,%EDI |
0x45c238 JGE 45c650 |
0x45c23e MOV %R14D,%ESI |
0x45c241 SUB %EDI,%ESI |
0x45c243 MOV %ESI,-0x74(%RBP) |
0x45c246 CALL 404650 <omp_get_num_threads@plt> |
0x45c24b MOV %EAX,%R12D |
0x45c24e CALL 404540 <omp_get_thread_num@plt> |
0x45c253 XOR %EDX,%EDX |
0x45c255 MOV %EAX,%ECX |
0x45c257 MOV -0x74(%RBP),%EAX |
0x45c25a IMUL %R13D,%EAX |
0x45c25e DIV %R12D |
0x45c261 MOV %EAX,%ESI |
0x45c263 CMP %EDX,%ECX |
0x45c265 JB 45c68d |
0x45c26b IMUL %ESI,%ECX |
0x45c26e ADD %EDX,%ECX |
0x45c270 LEA (%RSI,%RCX,1),%R8D |
0x45c274 MOV %R8D,-0x80(%RBP) |
0x45c278 CMP %R8D,%ECX |
0x45c27b JAE 45c650 |
0x45c281 MOV %ECX,%EAX |
0x45c283 XOR %EDX,%EDX |
0x45c285 MOV -0x7c(%RBP),%R9D |
0x45c289 MOV 0x28(%RBX),%R10 |
0x45c28d DIVL -0x74(%RBP) |
0x45c290 MOV (%RBX),%RDI |
0x45c293 MOV 0x18(%RBX),%R13 |
0x45c297 VMOVQ 0x1b11(%RIP),%XMM8 |
0x45c29f VMOVSD 0x22f1(%RIP),%XMM10 |
0x45c2a7 MOV %R10,-0x88(%RBP) |
0x45c2ae VMOVQ 0x317a(%RIP),%XMM12 |
0x45c2b6 VMOVSD 0x1422(%RIP),%XMM11 |
0x45c2be MOV %RDI,-0x98(%RBP) |
0x45c2c5 MOV %R13,-0xa8(%RBP) |
0x45c2cc VXORPD %XMM5,%XMM5,%XMM5 |
0x45c2d0 LEA (%RDX,%R9,1),%R9D |
0x45c2d4 MOV %R14D,%EDX |
0x45c2d7 MOV 0x8(%RBX),%R14 |
0x45c2db LEA (%RAX,%R15,1),%R11D |
0x45c2df MOV 0x30(%RBX),%R15 |
0x45c2e3 SUB %R9D,%EDX |
0x45c2e6 MOV %R14,-0xa0(%RBP) |
0x45c2ed MOV 0x10(%RBX),%R14 |
0x45c2f1 MOV 0x20(%RBX),%RBX |
0x45c2f5 MOV %R15,-0x90(%RBP) |
0x45c2fc MOVSXD %R11D,%R15 |
0x45c2ff MOV %RBX,-0xb0(%RBP) |
0x45c306 NOPW %CS:(%RAX,%RAX,1) |
(588) 0x45c310 CMP %EDX,%ESI |
(588) 0x45c312 LEA 0x1(%R11),%R12D |
(588) 0x45c316 CMOVBE %ESI,%EDX |
(588) 0x45c319 MOV %R12D,-0x64(%RBP) |
(588) 0x45c31d LEA (%RCX,%RDX,1),%ESI |
(588) 0x45c320 MOV %ESI,-0x68(%RBP) |
(588) 0x45c323 CMP %ESI,%ECX |
(588) 0x45c325 JAE 45c680 |
(588) 0x45c32b MOV -0x88(%RBP),%RCX |
(588) 0x45c332 MOV -0x90(%RBP),%R10 |
(588) 0x45c339 LEA 0x1(%R15),%RAX |
(588) 0x45c33d VMOVDDUP 0x238b(%RIP),%XMM9 |
(588) 0x45c345 MOV -0xa0(%RBP),%R12 |
(588) 0x45c34c MOV -0x98(%RBP),%R13 |
(588) 0x45c353 MOV %RAX,-0x60(%RBP) |
(588) 0x45c357 MOV 0x10(%RCX),%R8 |
(588) 0x45c35b MOV (%RCX),%RSI |
(588) 0x45c35e MOV %RAX,%RCX |
(588) 0x45c361 MOV 0x10(%R10),%RDI |
(588) 0x45c365 MOV 0x8(%R12),%RAX |
(588) 0x45c36a MOV -0xa8(%RBP),%R12 |
(588) 0x45c371 MOV (%R10),%RBX |
(588) 0x45c374 MOV %RSI,-0x70(%RBP) |
(588) 0x45c378 IMUL %R15,%RSI |
(588) 0x45c37c MOV 0x8(%R13),%R10 |
(588) 0x45c380 VMOVSD 0x2348(%RIP),%XMM6 |
(588) 0x45c388 MOV %RDI,-0x58(%RBP) |
(588) 0x45c38c LEA (%RAX,%R15,8),%RDI |
(588) 0x45c390 MOV 0x10(%R12),%R13 |
(588) 0x45c395 IMUL %RBX,%RCX |
(588) 0x45c399 VMOVSD 0x1347(%RIP),%XMM7 |
(588) 0x45c3a1 MOV %RDI,-0x40(%RBP) |
(588) 0x45c3a5 MOV (%R12),%RDI |
(588) 0x45c3a9 LEA (,%RDI,8),%R12 |
(588) 0x45c3b1 MOV %RDI,-0x50(%RBP) |
(588) 0x45c3b5 LEA 0x2(%R11),%EDI |
(588) 0x45c3b9 DEC %R11D |
(588) 0x45c3bc MOVSXD %EDI,%RDI |
(588) 0x45c3bf MOVSXD %R11D,%R11 |
(588) 0x45c3c2 IMUL %R12,%R11 |
(588) 0x45c3c6 LEA (%RAX,%RDI,8),%RAX |
(588) 0x45c3ca MOV %RAX,-0x38(%RBP) |
(588) 0x45c3ce MOVSXD %R9D,%RAX |
(588) 0x45c3d1 LEA -0x1(%RDX),%R9D |
(588) 0x45c3d5 LEA 0x1(%RAX),%RDX |
(588) 0x45c3d9 LEA (%R9,%RDX,1),%RDI |
(588) 0x45c3dd LEA (%R8,%RSI,8),%R9 |
(588) 0x45c3e1 ADD %R13,%R11 |
(588) 0x45c3e4 MOV %RDI,-0x48(%RBP) |
(588) 0x45c3e8 MOV -0x70(%RBP),%RDI |
(588) 0x45c3ec ADD %RDI,%RSI |
(588) 0x45c3ef LEA (%R8,%RSI,8),%R8 |
(588) 0x45c3f3 MOV -0x58(%RBP),%RSI |
(588) 0x45c3f7 MOV %R15,-0x58(%RBP) |
(588) 0x45c3fb LEA (%RSI,%RCX,8),%RDI |
(588) 0x45c3ff SUB %RBX,%RCX |
(588) 0x45c402 MOV -0x60(%RBP),%RBX |
(588) 0x45c406 LEA (%RSI,%RCX,8),%RSI |
(588) 0x45c40a MOV -0x50(%RBP),%RCX |
(588) 0x45c40e MOV %R11,-0x50(%RBP) |
(588) 0x45c412 IMUL %R12,%RBX |
(588) 0x45c416 MOV -0xb0(%RBP),%R12 |
(588) 0x45c41d IMUL %R15,%RCX |
(588) 0x45c421 ADD %R13,%RBX |
(588) 0x45c424 LEA (%R13,%RCX,8),%RCX |
(588) 0x45c429 MOV 0x10(%R12),%R13 |
(588) 0x45c42e MOV (%R12),%R12 |
(588) 0x45c432 IMUL %R15,%R12 |
(588) 0x45c436 JMP 45c4ce |
0x45c43b NOPL (%RAX,%RAX,1) |
(589) 0x45c440 VCOMISD %XMM24,%XMM5 |
(589) 0x45c446 VANDPD %XMM8,%XMM24,%XMM15 |
(589) 0x45c44c VMOVSD %XMM10,%XMM10,%XMM2 |
(589) 0x45c450 VMAXSD %XMM7,%XMM15,%XMM14 |
(589) 0x45c454 JA 45c668 |
(589) 0x45c45a VANDPD %XMM8,%XMM0,%XMM0 |
(589) 0x45c45f MOV -0x58(%RBP),%R15 |
(589) 0x45c463 VMAXSD %XMM7,%XMM0,%XMM15 |
(589) 0x45c467 IMUL (%R14),%R15 |
(589) 0x45c46b VMULSD %XMM2,%XMM15,%XMM4 |
(589) 0x45c46f ADD %R15,%RAX |
(589) 0x45c472 MOV 0x10(%R14),%R15 |
(589) 0x45c476 VMULSD %XMM4,%XMM4,%XMM0 |
(589) 0x45c47a VFMADD231SD %XMM14,%XMM14,%XMM0 |
(589) 0x45c47f VSQRTSD %XMM0,%XMM0,%XMM0 |
(589) 0x45c483 VMULSD %XMM3,%XMM0,%XMM3 |
(589) 0x45c487 VMULSD %XMM13,%XMM0,%XMM13 |
(589) 0x45c48c VDIVSD %XMM4,%XMM3,%XMM2 |
(589) 0x45c490 VMOVSD (%R15,%RAX,8),%XMM3 |
(589) 0x45c496 MOV %RDX,%RAX |
(589) 0x45c499 VDIVSD %XMM14,%XMM13,%XMM14 |
(589) 0x45c49e VANDPD %XMM8,%XMM2,%XMM15 |
(589) 0x45c4a3 VANDPD %XMM8,%XMM14,%XMM4 |
(589) 0x45c4a8 VMINSD %XMM4,%XMM15,%XMM0 |
(589) 0x45c4ac VADDSD %XMM3,%XMM3,%XMM15 |
(589) 0x45c4b0 VMULSD %XMM1,%XMM0,%XMM1 |
(589) 0x45c4b4 VMULSD %XMM1,%XMM1,%XMM2 |
(589) 0x45c4b8 VMULSD %XMM2,%XMM15,%XMM13 |
(589) 0x45c4bc VMOVSD %XMM13,(%R11) |
(589) 0x45c4c1 CMP %RDX,-0x48(%RBP) |
(589) 0x45c4c5 JE 45c627 |
(589) 0x45c4cb INC %RDX |
(589) 0x45c4ce VMOVSD 0x8(%R8,%RAX,8),%XMM2 |
(589) 0x45c4d5 VMOVSD (%R8,%RAX,8),%XMM1 |
(589) 0x45c4db VMOVSD 0x8(%R9,%RAX,8),%XMM18 |
(589) 0x45c4e3 VMOVSD (%R9,%RAX,8),%XMM14 |
(589) 0x45c4e9 VADDSD %XMM2,%XMM1,%XMM0 |
(589) 0x45c4ed VMOVSD 0x8(%RDI,%RAX,8),%XMM13 |
(589) 0x45c4f3 VMOVSD 0x8(%RSI,%RAX,8),%XMM15 |
(589) 0x45c4f9 VADDSD %XMM14,%XMM1,%XMM4 |
(589) 0x45c4fe VADDSD %XMM18,%XMM2,%XMM3 |
(589) 0x45c504 VMOVSD (%RDI,%RAX,8),%XMM17 |
(589) 0x45c50b MOV -0x40(%RBP),%R15 |
(589) 0x45c50f VADDSD %XMM13,%XMM15,%XMM16 |
(589) 0x45c515 VADDSD %XMM18,%XMM14,%XMM14 |
(589) 0x45c51b VMOVSD 0x8(%RCX,%RAX,8),%XMM22 |
(589) 0x45c523 MOV -0x50(%RBP),%R11 |
(589) 0x45c527 VADDSD %XMM17,%XMM13,%XMM1 |
(589) 0x45c52d VMOVSD (%R10,%RAX,8),%XMM13 |
(589) 0x45c533 VSUBSD %XMM4,%XMM3,%XMM2 |
(589) 0x45c537 VMOVSD (%RSI,%RAX,8),%XMM4 |
(589) 0x45c53c VSUBSD -0x8(%RCX,%RAX,8),%XMM22,%XMM23 |
(589) 0x45c544 VSUBSD %XMM14,%XMM0,%XMM0 |
(589) 0x45c549 VADDSD %XMM4,%XMM15,%XMM3 |
(589) 0x45c54d VADDSD %XMM17,%XMM4,%XMM4 |
(589) 0x45c553 VSUBSD %XMM4,%XMM16,%XMM20 |
(589) 0x45c559 VSUBSD %XMM3,%XMM1,%XMM1 |
(589) 0x45c55d VMOVSD (%R15),%XMM3 |
(589) 0x45c562 MOV -0x38(%RBP),%R15 |
(589) 0x45c566 VUNPCKLPD %XMM13,%XMM3,%XMM19 |
(589) 0x45c56c VMULSD %XMM1,%XMM3,%XMM15 |
(589) 0x45c570 VUNPCKLPD %XMM20,%XMM0,%XMM14 |
(589) 0x45c576 VMULPD %XMM9,%XMM14,%XMM0 |
(589) 0x45c57b VMULSD %XMM6,%XMM1,%XMM1 |
(589) 0x45c57f VFMADD231SD %XMM2,%XMM13,%XMM15 |
(589) 0x45c584 VDIVPD %XMM19,%XMM0,%XMM14 |
(589) 0x45c58a VADDSD 0x8(%R10,%RAX,8),%XMM13,%XMM0 |
(589) 0x45c591 VMULSD %XMM6,%XMM2,%XMM2 |
(589) 0x45c595 VCOMISD %XMM5,%XMM15 |
(589) 0x45c599 VDIVSD %XMM0,%XMM23,%XMM24 |
(589) 0x45c59f VUNPCKHPD %XMM14,%XMM14,%XMM4 |
(589) 0x45c5a4 VADDPD %XMM14,%XMM4,%XMM4 |
(589) 0x45c5a9 VMOVSD (%RBX,%RAX,8),%XMM14 |
(589) 0x45c5ae VSUBSD (%R11,%RAX,8),%XMM14,%XMM0 |
(589) 0x45c5b4 LEA (%RAX,%R12,1),%R11 |
(589) 0x45c5b8 VMOVSD %XMM4,%XMM4,%XMM21 |
(589) 0x45c5be VADDSD (%R15),%XMM3,%XMM4 |
(589) 0x45c5c3 LEA (%R13,%R11,8),%R11 |
(589) 0x45c5c8 VDIVSD %XMM4,%XMM0,%XMM0 |
(589) 0x45c5cc VMULSD %XMM24,%XMM24,%XMM25 |
(589) 0x45c5d2 VDIVSD %XMM13,%XMM2,%XMM2 |
(589) 0x45c5d7 VMULSD %XMM24,%XMM0,%XMM14 |
(589) 0x45c5dd VMULSD %XMM0,%XMM0,%XMM4 |
(589) 0x45c5e1 VMULSD %XMM21,%XMM14,%XMM14 |
(589) 0x45c5e7 VDIVSD %XMM3,%XMM1,%XMM1 |
(589) 0x45c5eb VFMADD132SD %XMM25,%XMM14,%XMM2 |
(589) 0x45c5f1 VFMADD132SD %XMM4,%XMM2,%XMM1 |
(589) 0x45c5f6 VADDSD %XMM25,%XMM4,%XMM4 |
(589) 0x45c5fc VMAXSD %XMM7,%XMM4,%XMM2 |
(589) 0x45c600 VDIVSD %XMM2,%XMM1,%XMM1 |
(589) 0x45c604 JAE 45c610 |
(589) 0x45c606 VCOMISD %XMM5,%XMM1 |
(589) 0x45c60a JBE 45c440 |
(589) 0x45c610 VXORPD %XMM13,%XMM13,%XMM13 |
(589) 0x45c615 MOV %RDX,%RAX |
(589) 0x45c618 VMOVSD %XMM13,(%R11) |
(589) 0x45c61d CMP %RDX,-0x48(%RBP) |
(589) 0x45c621 JNE 45c4cb |
(588) 0x45c627 MOV -0x64(%RBP),%R11D |
(588) 0x45c62b MOV -0x60(%RBP),%R15 |
(588) 0x45c62f CMP %R11D,-0x78(%RBP) |
(588) 0x45c633 JLE 45c650 |
(588) 0x45c635 MOV -0x80(%RBP),%ESI |
(588) 0x45c638 MOV -0x68(%RBP),%ECX |
(588) 0x45c63b MOV -0x74(%RBP),%EDX |
(588) 0x45c63e MOV -0x7c(%RBP),%R9D |
(588) 0x45c642 SUB %ECX,%ESI |
(588) 0x45c644 JMP 45c310 |
0x45c649 NOPL (%RAX) |
0x45c650 ADD $0x88,%RSP |
0x45c657 POP %RBX |
0x45c658 POP %R12 |
0x45c65a POP %R13 |
0x45c65c POP %R14 |
0x45c65e POP %R15 |
0x45c660 POP %RBP |
0x45c661 RET |
0x45c662 NOPW (%RAX,%RAX,1) |
(589) 0x45c668 VCOMISD %XMM5,%XMM14 |
(589) 0x45c66c VXORPD %XMM12,%XMM14,%XMM4 |
(589) 0x45c671 VMOVSD %XMM4,%XMM4,%XMM14 |
(589) 0x45c675 JBE 45c696 |
(589) 0x45c677 VMOVSD %XMM11,%XMM11,%XMM2 |
(589) 0x45c67b JMP 45c45a |
(588) 0x45c680 LEA 0x1(%R15),%R11 |
(588) 0x45c684 MOV %ECX,-0x68(%RBP) |
(588) 0x45c687 MOV %R11,-0x60(%RBP) |
(588) 0x45c68b JMP 45c627 |
0x45c68d INC %ESI |
0x45c68f XOR %EDX,%EDX |
0x45c691 JMP 45c26b |
(589) 0x45c696 VMOVSD 0x1efa(%RIP),%XMM2 |
(589) 0x45c69e JMP 45c45a |
0x45c6a3 NOPW %CS:(%RAX,%RAX,1) |
0x45c6ae XCHG %AX,%AX |
Path / |
Source file and lines | viscosity.cpp:36-64 |
Module | exec |
nb instructions | 89 |
nb uops | 98 |
loop length | 346 |
used x86 registers | 16 |
used mmx registers | 0 |
used xmm registers | 5 |
used ymm registers | 0 |
used zmm registers | 0 |
nb stack references | 10 |
micro-operation queue | 16.33 cycles |
front end | 16.33 cycles |
P0 | P1 | P2 | P3 | P4 | P5 | P6 | P7 | P8 | P9 | P10 | P11 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|
uops | 6.10 | 8.00 | 8.33 | 8.33 | 9.00 | 6.07 | 5.90 | 9.00 | 9.00 | 9.00 | 5.93 | 8.33 |
cycles | 6.10 | 11.93 | 8.33 | 8.33 | 9.00 | 6.07 | 5.90 | 9.00 | 9.00 | 9.00 | 5.93 | 8.33 |
Cycles executing div or sqrt instructions | 12.00 |
FE+BE cycles | 15.75-15.85 |
Stall cycles | 0.00 |
Front-end | 16.33 |
Dispatch | 11.93 |
DIV/SQRT | 12.00 |
Overall L1 | 16.33 |
all | 0% |
load | 0% |
store | 0% |
mul | NA (no mul vectorizable/vectorized instructions) |
add-sub | 0% |
fma | NA (no fma vectorizable/vectorized instructions) |
other | 0% |
all | 33% |
load | 0% |
store | NA (no store vectorizable/vectorized instructions) |
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 | 100% |
all | 3% |
load | 0% |
store | 0% |
mul | NA (no mul vectorizable/vectorized instructions) |
add-sub | 0% |
fma | NA (no fma vectorizable/vectorized instructions) |
div/sqrt | 0% |
other | 14% |
all | 9% |
load | 11% |
store | 10% |
mul | NA (no mul vectorizable/vectorized instructions) |
add-sub | 10% |
fma | NA (no fma vectorizable/vectorized instructions) |
other | 6% |
all | 16% |
load | 12% |
store | NA (no store vectorizable/vectorized instructions) |
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 | 25% |
all | 10% |
load | 11% |
store | 10% |
mul | NA (no mul vectorizable/vectorized instructions) |
add-sub | 10% |
fma | NA (no fma vectorizable/vectorized instructions) |
div/sqrt | 6% |
other | 8% |
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 |
MOV %RDI,%RBX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
SUB $0x88,%RSP | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
MOV 0x40(%RDI),%EAX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV 0x44(%RDI),%ECX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV 0x38(%RDI),%EDI | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV 0x3c(%RBX),%EDX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
ADD $0x2,%ECX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
LEA 0x1(%RAX),%R15D | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1-2 | 0.20 |
INC %EDI | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
MOV %ECX,-0x78(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
MOV %EDI,-0x7c(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
CMP %ECX,%R15D | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
JGE 45c650 <_Z16viscosity_kerneliiiiRN6clover8Buffer1DIdEES2_RNS_8Buffer2DIdEES5_S5_S5_S5_._omp_fn.0+0x460> | 1 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0.50 |
MOV %ECX,%R13D | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
LEA 0x2(%RDX),%R14D | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1-2 | 0.20 |
SUB %R15D,%R13D | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
CMP %R14D,%EDI | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
JGE 45c650 <_Z16viscosity_kerneliiiiRN6clover8Buffer1DIdEES2_RNS_8Buffer2DIdEES5_S5_S5_S5_._omp_fn.0+0x460> | 1 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0.50 |
MOV %R14D,%ESI | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
SUB %EDI,%ESI | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
MOV %ESI,-0x74(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
CALL 404650 <omp_get_num_threads@plt> | 2 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 0 | 1 |
MOV %EAX,%R12D | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
CALL 404540 <omp_get_thread_num@plt> | 2 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 0 | 1 |
XOR %EDX,%EDX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
MOV %EAX,%ECX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
MOV -0x74(%RBP),%EAX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
IMUL %R13D,%EAX | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 1 |
DIV %R12D | 4 | 0 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 11-16 | 6 |
MOV %EAX,%ESI | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
CMP %EDX,%ECX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
JB 45c68d <_Z16viscosity_kerneliiiiRN6clover8Buffer1DIdEES2_RNS_8Buffer2DIdEES5_S5_S5_S5_._omp_fn.0+0x49d> | 1 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0.50 |
IMUL %ESI,%ECX | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 1 |
ADD %EDX,%ECX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
LEA (%RSI,%RCX,1),%R8D | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1-2 | 0.20 |
MOV %R8D,-0x80(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
CMP %R8D,%ECX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
JAE 45c650 <_Z16viscosity_kerneliiiiRN6clover8Buffer1DIdEES2_RNS_8Buffer2DIdEES5_S5_S5_S5_._omp_fn.0+0x460> | 1 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0.50 |
MOV %ECX,%EAX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
XOR %EDX,%EDX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
MOV -0x7c(%RBP),%R9D | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV 0x28(%RBX),%R10 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
DIVL -0x74(%RBP) | 5 | 0 | 3 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 11-16 | 6 |
MOV (%RBX),%RDI | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV 0x18(%RBX),%R13 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
VMOVQ 0x1b11(%RIP),%XMM8 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
VMOVSD 0x22f1(%RIP),%XMM10 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV %R10,-0x88(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
VMOVQ 0x317a(%RIP),%XMM12 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
VMOVSD 0x1422(%RIP),%XMM11 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV %RDI,-0x98(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
MOV %R13,-0xa8(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
VXORPD %XMM5,%XMM5,%XMM5 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
LEA (%RDX,%R9,1),%R9D | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1-2 | 0.20 |
MOV %R14D,%EDX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
MOV 0x8(%RBX),%R14 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
LEA (%RAX,%R15,1),%R11D | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1-2 | 0.20 |
MOV 0x30(%RBX),%R15 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
SUB %R9D,%EDX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
MOV %R14,-0xa0(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
MOV 0x10(%RBX),%R14 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV 0x20(%RBX),%RBX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV %R15,-0x90(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
MOVSXD %R11D,%R15 | 1 | 0 | 0.33 | 0 | 0 | 0 | 0.33 | 0 | 0 | 0 | 0 | 0.33 | 0 | 1 | 0.33 |
MOV %RBX,-0xb0(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPL (%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 |
ADD $0x88,%RSP | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
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 (%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
INC %ESI | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
XOR %EDX,%EDX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
JMP 45c26b <_Z16viscosity_kerneliiiiRN6clover8Buffer1DIdEES2_RNS_8Buffer2DIdEES5_S5_S5_S5_._omp_fn.0+0x7b> | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 2.08 |
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 |
Source file and lines | viscosity.cpp:36-64 |
Module | exec |
nb instructions | 89 |
nb uops | 98 |
loop length | 346 |
used x86 registers | 16 |
used mmx registers | 0 |
used xmm registers | 5 |
used ymm registers | 0 |
used zmm registers | 0 |
nb stack references | 10 |
micro-operation queue | 16.33 cycles |
front end | 16.33 cycles |
P0 | P1 | P2 | P3 | P4 | P5 | P6 | P7 | P8 | P9 | P10 | P11 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|
uops | 6.10 | 8.00 | 8.33 | 8.33 | 9.00 | 6.07 | 5.90 | 9.00 | 9.00 | 9.00 | 5.93 | 8.33 |
cycles | 6.10 | 11.93 | 8.33 | 8.33 | 9.00 | 6.07 | 5.90 | 9.00 | 9.00 | 9.00 | 5.93 | 8.33 |
Cycles executing div or sqrt instructions | 12.00 |
FE+BE cycles | 15.75-15.85 |
Stall cycles | 0.00 |
Front-end | 16.33 |
Dispatch | 11.93 |
DIV/SQRT | 12.00 |
Overall L1 | 16.33 |
all | 0% |
load | 0% |
store | 0% |
mul | NA (no mul vectorizable/vectorized instructions) |
add-sub | 0% |
fma | NA (no fma vectorizable/vectorized instructions) |
other | 0% |
all | 33% |
load | 0% |
store | NA (no store vectorizable/vectorized instructions) |
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 | 100% |
all | 3% |
load | 0% |
store | 0% |
mul | NA (no mul vectorizable/vectorized instructions) |
add-sub | 0% |
fma | NA (no fma vectorizable/vectorized instructions) |
div/sqrt | 0% |
other | 14% |
all | 9% |
load | 11% |
store | 10% |
mul | NA (no mul vectorizable/vectorized instructions) |
add-sub | 10% |
fma | NA (no fma vectorizable/vectorized instructions) |
other | 6% |
all | 16% |
load | 12% |
store | NA (no store vectorizable/vectorized instructions) |
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 | 25% |
all | 10% |
load | 11% |
store | 10% |
mul | NA (no mul vectorizable/vectorized instructions) |
add-sub | 10% |
fma | NA (no fma vectorizable/vectorized instructions) |
div/sqrt | 6% |
other | 8% |
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 |
MOV %RDI,%RBX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
SUB $0x88,%RSP | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
MOV 0x40(%RDI),%EAX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV 0x44(%RDI),%ECX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV 0x38(%RDI),%EDI | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV 0x3c(%RBX),%EDX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
ADD $0x2,%ECX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
LEA 0x1(%RAX),%R15D | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1-2 | 0.20 |
INC %EDI | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
MOV %ECX,-0x78(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
MOV %EDI,-0x7c(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
CMP %ECX,%R15D | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
JGE 45c650 <_Z16viscosity_kerneliiiiRN6clover8Buffer1DIdEES2_RNS_8Buffer2DIdEES5_S5_S5_S5_._omp_fn.0+0x460> | 1 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0.50 |
MOV %ECX,%R13D | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
LEA 0x2(%RDX),%R14D | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1-2 | 0.20 |
SUB %R15D,%R13D | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
CMP %R14D,%EDI | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
JGE 45c650 <_Z16viscosity_kerneliiiiRN6clover8Buffer1DIdEES2_RNS_8Buffer2DIdEES5_S5_S5_S5_._omp_fn.0+0x460> | 1 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0.50 |
MOV %R14D,%ESI | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
SUB %EDI,%ESI | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
MOV %ESI,-0x74(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
CALL 404650 <omp_get_num_threads@plt> | 2 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 0 | 1 |
MOV %EAX,%R12D | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
CALL 404540 <omp_get_thread_num@plt> | 2 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 0 | 1 |
XOR %EDX,%EDX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
MOV %EAX,%ECX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
MOV -0x74(%RBP),%EAX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
IMUL %R13D,%EAX | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 1 |
DIV %R12D | 4 | 0 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 11-16 | 6 |
MOV %EAX,%ESI | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
CMP %EDX,%ECX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
JB 45c68d <_Z16viscosity_kerneliiiiRN6clover8Buffer1DIdEES2_RNS_8Buffer2DIdEES5_S5_S5_S5_._omp_fn.0+0x49d> | 1 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0.50 |
IMUL %ESI,%ECX | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 1 |
ADD %EDX,%ECX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
LEA (%RSI,%RCX,1),%R8D | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1-2 | 0.20 |
MOV %R8D,-0x80(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
CMP %R8D,%ECX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
JAE 45c650 <_Z16viscosity_kerneliiiiRN6clover8Buffer1DIdEES2_RNS_8Buffer2DIdEES5_S5_S5_S5_._omp_fn.0+0x460> | 1 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0.50 |
MOV %ECX,%EAX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
XOR %EDX,%EDX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
MOV -0x7c(%RBP),%R9D | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV 0x28(%RBX),%R10 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
DIVL -0x74(%RBP) | 5 | 0 | 3 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 11-16 | 6 |
MOV (%RBX),%RDI | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV 0x18(%RBX),%R13 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
VMOVQ 0x1b11(%RIP),%XMM8 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
VMOVSD 0x22f1(%RIP),%XMM10 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV %R10,-0x88(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
VMOVQ 0x317a(%RIP),%XMM12 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
VMOVSD 0x1422(%RIP),%XMM11 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV %RDI,-0x98(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
MOV %R13,-0xa8(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
VXORPD %XMM5,%XMM5,%XMM5 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
LEA (%RDX,%R9,1),%R9D | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1-2 | 0.20 |
MOV %R14D,%EDX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
MOV 0x8(%RBX),%R14 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
LEA (%RAX,%R15,1),%R11D | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1-2 | 0.20 |
MOV 0x30(%RBX),%R15 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
SUB %R9D,%EDX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
MOV %R14,-0xa0(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
MOV 0x10(%RBX),%R14 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV 0x20(%RBX),%RBX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV %R15,-0x90(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
MOVSXD %R11D,%R15 | 1 | 0 | 0.33 | 0 | 0 | 0 | 0.33 | 0 | 0 | 0 | 0 | 0.33 | 0 | 1 | 0.33 |
MOV %RBX,-0xb0(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPL (%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 |
ADD $0x88,%RSP | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
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 (%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
INC %ESI | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
XOR %EDX,%EDX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
JMP 45c26b <_Z16viscosity_kerneliiiiRN6clover8Buffer1DIdEES2_RNS_8Buffer2DIdEES5_S5_S5_S5_._omp_fn.0+0x7b> | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 2.08 |
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 |
Name | Coverage (%) | Time (s) |
---|---|---|
▼_Z16viscosity_kerneliiiiRN6clover8Buffer1DIdEES2_RNS_8Buffer2DIdEES5_S5_S5_S5_._omp_fn.0– | 7.16 | 2.39 |
▼Loop 588 - viscosity.cpp:38-64 - exec– | 0 | 0 |
○Loop 589 - viscosity.cpp:39-64 - exec | 7.15 | 2.38 |