Function: dd_pmeredist_f(gmx_pme_t*, PmeAtomComm*, gmx::ArrayRef<gmx::BasicVector<float> >, bool) | Module: libgromacs_mpi.so.9.0.0 | Source: pme_redistribute.cpp:265-472 [...] | Coverage (incl. loops): 0.16% | (excl. loops): 0.00% |
---|
Function: dd_pmeredist_f(gmx_pme_t*, PmeAtomComm*, gmx::ArrayRef<gmx::BasicVector<float> >, bool) | Module: libgromacs_mpi.so.9.0.0 | Source: pme_redistribute.cpp:265-472 [...] | Coverage (incl. loops): 0.16% | (excl. loops): 0.00% |
---|
/home/eoseret/gromacs-2024.2/src/gromacs/ewald/pme_redistribute.cpp: 265 - 472 |
-------------------------------------------------------------------------------- |
265: if (nbyte_s > 0 && nbyte_r > 0) |
266: { |
267: MPI_Sendrecv( |
268: buf_s, nbyte_s, MPI_BYTE, dest, shift, buf_r, nbyte_r, MPI_BYTE, src, shift, atc->mpi_comm, &stat); |
269: } |
270: else if (nbyte_s > 0) |
271: { |
272: MPI_Send(buf_s, nbyte_s, MPI_BYTE, dest, shift, atc->mpi_comm); |
273: } |
274: else if (nbyte_r > 0) |
275: { |
276: MPI_Recv(buf_r, nbyte_r, MPI_BYTE, src, shift, atc->mpi_comm, &stat); |
[...] |
405: { |
406: int nnodes_comm, local_pos, buf_pos, i; |
407: |
408: nnodes_comm = std::min(2 * atc->maxshift, atc->nslab - 1); |
409: |
410: local_pos = atc->sendCount()[atc->slabIndex]; |
411: buf_pos = 0; |
412: for (i = 0; i < nnodes_comm; i++) |
413: { |
414: const int commnode = atc->slabCommSetup[i].node_dest; |
415: const int scount = atc->slabCommSetup[i].rcount; |
416: const int rcount = atc->sendCount()[commnode]; |
417: if (scount > 0 || rcount > 0) |
[...] |
423: atc->f.data() + local_pos, |
424: scount * sizeof(rvec), |
425: pme->bufv + buf_pos, |
426: rcount * sizeof(rvec)); |
427: local_pos += scount; |
428: } |
429: atc->bufferIndices[commnode] = buf_pos; |
430: buf_pos += rcount; |
431: } |
432: |
433: local_pos = 0; |
434: if (bAddF) |
435: { |
436: for (gmx::Index i = 0; i < f.ssize(); i++) |
437: { |
438: const int slabIndex = atc->pd[i]; |
439: if (slabIndex == atc->slabIndex) |
440: { |
441: /* Add from the local force array */ |
442: rvec_inc(f[i], atc->f[local_pos]); |
443: local_pos++; |
444: } |
445: else |
446: { |
447: /* Add from the receive buffer */ |
448: rvec_inc(f[i], pme->bufv[atc->bufferIndices[slabIndex]]); |
449: atc->bufferIndices[slabIndex]++; |
[...] |
455: for (gmx::Index i = 0; i < f.ssize(); i++) |
456: { |
457: const int slabIndex = atc->pd[i]; |
458: if (slabIndex == atc->slabIndex) |
459: { |
460: /* Copy from the local force array */ |
461: copy_rvec(atc->f[local_pos], f[i]); |
462: local_pos++; |
463: } |
464: else |
465: { |
466: /* Copy from the receive buffer */ |
467: copy_rvec(pme->bufv[atc->bufferIndices[slabIndex]], f[i]); |
468: atc->bufferIndices[slabIndex]++; |
469: } |
470: } |
471: } |
472: } |
/usr/lib/gcc/x86_64-redhat-linux/11/../../../../include/c++/11/bits/stl_vector.h: 1046 - 1169 |
-------------------------------------------------------------------------------- |
1046: return *(this->_M_impl._M_start + __n); |
[...] |
1169: { return _M_data_ptr(this->_M_impl._M_start); } |
/home/eoseret/gromacs-2024.2/api/legacy/include/gromacs/utility/arrayref.h: 82 - 82 |
-------------------------------------------------------------------------------- |
82: it_ += i; |
/home/eoseret/gromacs-2024.2/src/external/boost/stl_interfaces/iterator_interface.hpp: 305 - 305 |
-------------------------------------------------------------------------------- |
305: D retval = derived(); |
/home/eoseret/gromacs-2024.2/api/legacy/include/gromacs/math/vec.h: 141 - 206 |
-------------------------------------------------------------------------------- |
141: x = a[XX] + b[XX]; |
142: y = a[YY] + b[YY]; |
143: z = a[ZZ] + b[ZZ]; |
144: |
145: a[XX] = x; |
146: a[YY] = y; |
147: a[ZZ] = z; |
[...] |
204: b[XX] = a[XX]; |
205: b[YY] = a[YY]; |
206: b[ZZ] = a[ZZ]; |
0xc0a100 PUSH %RBP |
0xc0a101 MOV %RSP,%RBP |
0xc0a104 PUSH %R15 |
0xc0a106 PUSH %R14 |
0xc0a108 PUSH %R13 |
0xc0a10a PUSH %R12 |
0xc0a10c PUSH %RBX |
0xc0a10d SUB $0x58,%RSP |
0xc0a111 MOV %R8D,-0x54(%RBP) |
0xc0a115 MOV %RCX,-0x60(%RBP) |
0xc0a119 MOV %RDX,%RBX |
0xc0a11c MOV %RSI,%R10 |
0xc0a11f MOV %RDI,-0x50(%RBP) |
0xc0a123 MOV 0x4(%RSI),%EAX |
0xc0a126 MOV 0x28(%RSI),%ECX |
0xc0a129 ADD %ECX,%ECX |
0xc0a12b DEC %EAX |
0xc0a12d CMP %ECX,%EAX |
0xc0a12f CMOVGE %ECX,%EAX |
0xc0a132 TEST %EAX,%EAX |
0xc0a134 MOV %RSI,-0x30(%RBP) |
0xc0a138 JLE c0a2ae |
0xc0a13e MOV 0x60(%R10),%RCX |
0xc0a142 MOV (%RCX),%RCX |
0xc0a145 MOVSXD 0x8(%R10),%RDX |
0xc0a149 MOV (%RCX,%RDX,4),%EDX |
0xc0a14c MOV %EAX,%ESI |
0xc0a14e XOR %R13D,%R13D |
0xc0a151 MOV $0x8,%R15D |
0xc0a157 XOR %R14D,%R14D |
0xc0a15a MOV %RSI,-0x68(%RBP) |
0xc0a15e JMP c0a1c0 |
(17421) 0xc0a160 MOV -0x30(%RBP),%RDX |
(17421) 0xc0a164 MOV 0xc(%RDX),%R10D |
(17421) 0xc0a168 MOV $0x4c00010d,%EDX |
(17421) 0xc0a16d MOV %R13D,%R8D |
(17421) 0xc0a170 LEA -0x80(%RBP),%R11 |
(17421) 0xc0a174 PUSH %R11 |
(17421) 0xc0a176 PUSH %R10 |
(17421) 0xc0a178 PUSH %R13 |
(17421) 0xc0a17a PUSHQ -0x40(%RBP) |
(17421) 0xc0a17d PUSH $0x4c00010d |
(17421) 0xc0a182 PUSH %RAX |
(17421) 0xc0a183 CALL fa8ec0 <@plt_start@+0x5a10> |
(17421) 0xc0a188 MOV -0x48(%RBP),%R11 |
(17421) 0xc0a18c MOV -0x40(%RBP),%R8 |
(17421) 0xc0a190 MOV -0x34(%RBP),%EDX |
(17421) 0xc0a193 MOV -0x30(%RBP),%R10 |
(17421) 0xc0a197 ADD $0x30,%RSP |
(17421) 0xc0a19b ADD %R11D,%EDX |
(17421) 0xc0a19e MOV -0x68(%RBP),%RSI |
(17421) 0xc0a1a2 MOV 0x30(%R10),%RAX |
(17421) 0xc0a1a6 MOV %R14D,(%RAX,%R8,4) |
(17421) 0xc0a1aa ADD %R14D,%R12D |
(17421) 0xc0a1ad INC %R13 |
(17421) 0xc0a1b0 ADD $0xc,%R15 |
(17421) 0xc0a1b4 MOV %R12D,%R14D |
(17421) 0xc0a1b7 CMP %R13,%RSI |
(17421) 0xc0a1ba JE c0a2ae |
(17421) 0xc0a1c0 MOV 0x10(%R10),%RCX |
(17421) 0xc0a1c4 MOV 0x60(%R10),%RAX |
(17421) 0xc0a1c8 MOVSXD -0x8(%RCX,%R15,1),%R8 |
(17421) 0xc0a1cd MOV (%RCX,%R15,1),%R11D |
(17421) 0xc0a1d1 MOV (%RAX),%RAX |
(17421) 0xc0a1d4 MOV (%RAX,%R8,4),%R12D |
(17421) 0xc0a1d8 TEST %R11D,%R11D |
(17421) 0xc0a1db JG c0a1e2 |
(17421) 0xc0a1dd TEST %R12D,%R12D |
(17421) 0xc0a1e0 JLE c0a1a2 |
(17421) 0xc0a1e2 MOVSXD %EDX,%RAX |
(17421) 0xc0a1e5 LEA (%RAX,%RAX,2),%RDI |
(17421) 0xc0a1e9 SAL $0x2,%RDI |
(17421) 0xc0a1ed ADD 0xa0(%R10),%RDI |
(17421) 0xc0a1f4 LEA (,%R11,4),%EAX |
(17421) 0xc0a1fc LEA (%RAX,%RAX,2),%ESI |
(17421) 0xc0a1ff MOVSXD %R14D,%RAX |
(17421) 0xc0a202 LEA (%RAX,%RAX,2),%R9 |
(17421) 0xc0a206 SAL $0x2,%R9 |
(17421) 0xc0a20a MOV -0x50(%RBP),%RAX |
(17421) 0xc0a20e ADD 0x768(%RAX),%R9 |
(17421) 0xc0a215 LEA (,%R12,4),%EAX |
(17421) 0xc0a21d LEA (%RAX,%RAX,2),%EAX |
(17421) 0xc0a220 MOV -0x4(%RCX,%R15,1),%ECX |
(17421) 0xc0a225 TEST %ESI,%ESI |
(17421) 0xc0a227 MOV %EDX,-0x34(%RBP) |
(17421) 0xc0a22a MOV %R8,-0x40(%RBP) |
(17421) 0xc0a22e MOV %R11,-0x48(%RBP) |
(17421) 0xc0a232 JLE c0a23c |
(17421) 0xc0a234 TEST %EAX,%EAX |
(17421) 0xc0a236 JG c0a160 |
(17421) 0xc0a23c TEST %ESI,%ESI |
(17421) 0xc0a23e JLE c0a265 |
(17421) 0xc0a240 MOV 0xc(%R10),%R9D |
(17421) 0xc0a244 MOV $0x4c00010d,%EDX |
(17421) 0xc0a249 MOV %R13D,%R8D |
(17421) 0xc0a24c CALL fa8410 <@plt_start@+0x4f60> |
(17421) 0xc0a251 MOV -0x48(%RBP),%R11 |
(17421) 0xc0a255 MOV -0x40(%RBP),%R8 |
(17421) 0xc0a259 MOV -0x34(%RBP),%EDX |
(17421) 0xc0a25c MOV -0x30(%RBP),%R10 |
(17421) 0xc0a260 JMP c0a19b |
(17421) 0xc0a265 TEST %EAX,%EAX |
(17421) 0xc0a267 JLE c0a19b |
(17421) 0xc0a26d MOV -0x30(%RBP),%RCX |
(17421) 0xc0a271 MOV 0xc(%RCX),%R10D |
(17421) 0xc0a275 SUB $0x8,%RSP |
(17421) 0xc0a279 MOV %R9,%RDI |
(17421) 0xc0a27c MOV %EAX,%ESI |
(17421) 0xc0a27e MOV $0x4c00010d,%EDX |
(17421) 0xc0a283 MOV %R8D,%ECX |
(17421) 0xc0a286 MOV %R13D,%R8D |
(17421) 0xc0a289 MOV %R10D,%R9D |
(17421) 0xc0a28c LEA -0x80(%RBP),%RAX |
(17421) 0xc0a290 PUSH %RAX |
(17421) 0xc0a291 CALL fa8400 <@plt_start@+0x4f50> |
(17421) 0xc0a296 MOV -0x48(%RBP),%R11 |
(17421) 0xc0a29a MOV -0x40(%RBP),%R8 |
(17421) 0xc0a29e MOV -0x34(%RBP),%EDX |
(17421) 0xc0a2a1 MOV -0x30(%RBP),%R10 |
(17421) 0xc0a2a5 ADD $0x10,%RSP |
(17421) 0xc0a2a9 JMP c0a19b |
0xc0a2ae MOV -0x60(%RBP),%RDX |
0xc0a2b2 SUB %RBX,%RDX |
0xc0a2b5 CMPB $0,-0x54(%RBP) |
0xc0a2b9 JE c0a395 |
0xc0a2bf TEST %RDX,%RDX |
0xc0a2c2 JLE c0a469 |
0xc0a2c8 MOV $-0x5555555555555555,%RAX |
0xc0a2d2 MULX %RAX,%RDX,%RDX |
0xc0a2d7 SHR $0x3,%RDX |
0xc0a2db MOV 0x48(%R10),%RAX |
0xc0a2df CMP $0x2,%RDX |
0xc0a2e3 MOV $0x1,%ECX |
0xc0a2e8 CMOVGE %RDX,%RCX |
0xc0a2ec ADD $0x8,%RBX |
0xc0a2f0 XOR %EDX,%EDX |
0xc0a2f2 XOR %ESI,%ESI |
0xc0a2f4 JMP c0a356 |
0xc0a2f6 NOPW %CS:(%RAX,%RAX,1) |
(17420) 0xc0a300 MOV -0x50(%RBP),%R8 |
(17420) 0xc0a304 MOV 0x768(%R8),%R8 |
(17420) 0xc0a30b MOV 0x30(%R10),%R9 |
(17420) 0xc0a30f MOVSXD (%R9,%RDI,4),%R10 |
(17420) 0xc0a313 LEA (%R10,%R10,2),%R11 |
(17420) 0xc0a317 VMOVSS (%RBX),%XMM0 |
(17420) 0xc0a31b VADDSS 0x8(%R8,%R11,4),%XMM0,%XMM0 |
(17420) 0xc0a322 VMOVSD -0x8(%RBX),%XMM1 |
(17420) 0xc0a327 VMOVSD (%R8,%R11,4),%XMM2 |
(17420) 0xc0a32d VADDPS %XMM2,%XMM1,%XMM1 |
(17420) 0xc0a331 VMOVLPS %XMM1,-0x8(%RBX) |
(17420) 0xc0a336 VMOVSS %XMM0,(%RBX) |
(17420) 0xc0a33a LEA 0x1(%R10),%R8D |
(17420) 0xc0a33e MOV -0x30(%RBP),%R10 |
(17420) 0xc0a342 MOV %R8D,(%R9,%RDI,4) |
(17420) 0xc0a346 INC %RSI |
(17420) 0xc0a349 ADD $0xc,%RBX |
(17420) 0xc0a34d CMP %RSI,%RCX |
(17420) 0xc0a350 JE c0a469 |
(17420) 0xc0a356 MOVSXD (%RAX,%RSI,4),%RDI |
(17420) 0xc0a35a CMP 0x8(%R10),%EDI |
(17420) 0xc0a35e JNE c0a300 |
(17420) 0xc0a360 MOVSXD %EDX,%RDX |
(17420) 0xc0a363 MOV 0xa0(%R10),%RDI |
(17420) 0xc0a36a LEA (%RDX,%RDX,2),%R8 |
(17420) 0xc0a36e VMOVSS (%RBX),%XMM0 |
(17420) 0xc0a372 VADDSS 0x8(%RDI,%R8,4),%XMM0,%XMM0 |
(17420) 0xc0a379 VMOVSD -0x8(%RBX),%XMM1 |
(17420) 0xc0a37e VMOVSD (%RDI,%R8,4),%XMM2 |
(17420) 0xc0a384 VADDPS %XMM2,%XMM1,%XMM1 |
(17420) 0xc0a388 VMOVLPS %XMM1,-0x8(%RBX) |
(17420) 0xc0a38d VMOVSS %XMM0,(%RBX) |
(17420) 0xc0a391 INC %EDX |
(17420) 0xc0a393 JMP c0a346 |
0xc0a395 TEST %RDX,%RDX |
0xc0a398 JLE c0a469 |
0xc0a39e MOV $-0x5555555555555555,%RAX |
0xc0a3a8 MULX %RAX,%RDX,%RDX |
0xc0a3ad SHR $0x3,%RDX |
0xc0a3b1 MOV 0x48(%R10),%RAX |
0xc0a3b5 CMP $0x2,%RDX |
0xc0a3b9 MOV $0x1,%ECX |
0xc0a3be CMOVGE %RDX,%RCX |
0xc0a3c2 ADD $0x8,%RBX |
0xc0a3c6 XOR %EDX,%EDX |
0xc0a3c8 XOR %ESI,%ESI |
0xc0a3ca JMP c0a421 |
0xc0a3cc NOPL (%RAX) |
(17419) 0xc0a3d0 MOV -0x50(%RBP),%R8 |
(17419) 0xc0a3d4 MOV 0x768(%R8),%R8 |
(17419) 0xc0a3db MOV 0x30(%R10),%R9 |
(17419) 0xc0a3df MOVSXD (%R9,%RDI,4),%R10 |
(17419) 0xc0a3e3 LEA (%R10,%R10,2),%R11 |
(17419) 0xc0a3e7 VMOVSS (%R8,%R11,4),%XMM0 |
(17419) 0xc0a3ed VMOVSS %XMM0,-0x8(%RBX) |
(17419) 0xc0a3f2 VMOVSS 0x4(%R8,%R11,4),%XMM0 |
(17419) 0xc0a3f9 VMOVSS %XMM0,-0x4(%RBX) |
(17419) 0xc0a3fe VMOVSS 0x8(%R8,%R11,4),%XMM0 |
(17419) 0xc0a405 VMOVSS %XMM0,(%RBX) |
(17419) 0xc0a409 LEA 0x1(%R10),%R8D |
(17419) 0xc0a40d MOV -0x30(%RBP),%R10 |
(17419) 0xc0a411 MOV %R8D,(%R9,%RDI,4) |
(17419) 0xc0a415 INC %RSI |
(17419) 0xc0a418 ADD $0xc,%RBX |
(17419) 0xc0a41c CMP %RSI,%RCX |
(17419) 0xc0a41f JE c0a469 |
(17419) 0xc0a421 MOVSXD (%RAX,%RSI,4),%RDI |
(17419) 0xc0a425 CMP 0x8(%R10),%EDI |
(17419) 0xc0a429 JNE c0a3d0 |
(17419) 0xc0a42b MOVSXD %EDX,%RDX |
(17419) 0xc0a42e MOV 0xa0(%R10),%RDI |
(17419) 0xc0a435 LEA (%RDX,%RDX,2),%R8 |
(17419) 0xc0a439 VMOVSS (%RDI,%R8,4),%XMM0 |
(17419) 0xc0a43f VMOVSS %XMM0,-0x8(%RBX) |
(17419) 0xc0a444 VMOVSS 0x4(%RDI,%R8,4),%XMM0 |
(17419) 0xc0a44b VMOVSS %XMM0,-0x4(%RBX) |
(17419) 0xc0a450 VMOVSS 0x8(%RDI,%R8,4),%XMM0 |
(17419) 0xc0a457 VMOVSS %XMM0,(%RBX) |
(17419) 0xc0a45b INC %EDX |
(17419) 0xc0a45d INC %RSI |
(17419) 0xc0a460 ADD $0xc,%RBX |
(17419) 0xc0a464 CMP %RSI,%RCX |
(17419) 0xc0a467 JNE c0a421 |
0xc0a469 ADD $0x58,%RSP |
0xc0a46d POP %RBX |
0xc0a46e POP %R12 |
0xc0a470 POP %R13 |
0xc0a472 POP %R14 |
0xc0a474 POP %R15 |
0xc0a476 POP %RBP |
0xc0a477 RET |
0xc0a478 NOPL (%RAX,%RAX,1) |
Coverage (%) | Name | Source Location | Module |
---|---|---|---|
►100.00+ | gmx_pme_do(gmx_pme_t*, gmx::Ar[...] | pme.cpp:1664 | libgromacs_mpi.so.9.0.0 |
○ | CpuPpLongRangeNonbondeds::calc[...] | force.cpp:261 | libgromacs_mpi.so.9.0.0 |
○ | do_force(_IO_FILE*, t_commrec [...] | sim_util.cpp:2073 | libgromacs_mpi.so.9.0.0 |
○ | gmx::LegacySimulator::do_md() | md.cpp:1248 | libgromacs_mpi.so.9.0.0 |
○ | gmx::Mdrunner::mdrunner() | runner.cpp:2311 | libgromacs_mpi.so.9.0.0 |
○ | gmx::gmx_mdrun(int, gmx_hw_inf[...] | mdrun.cpp:280 | gmx_mpi |
○ | gmx::gmx_mdrun(int, char**) | mdrun.cpp:82 | gmx_mpi |
○ | gmx::CommandLineModuleManager:[...] | cmdlinemodulemanager.cpp:569 | libgromacs_mpi.so.9.0.0 |
○ | main | gmx.cpp:58 | gmx_mpi |
○ | __libc_start_call_main | libc.so.6 |
Coverage (%) | Name | Source Location | Module |
---|---|---|---|
►100.00+ | gmx_pme_do(gmx_pme_t*, gmx::Ar[...] | pme.cpp:1664 | libgromacs_mpi.so.9.0.0 |
○ | CpuPpLongRangeNonbondeds::calc[...] | force.cpp:261 | libgromacs_mpi.so.9.0.0 |
○ | do_force(_IO_FILE*, t_commrec [...] | sim_util.cpp:2073 | libgromacs_mpi.so.9.0.0 |
○ | gmx::LegacySimulator::do_md() | md.cpp:1248 | libgromacs_mpi.so.9.0.0 |
○ | gmx::Mdrunner::mdrunner() | runner.cpp:2311 | libgromacs_mpi.so.9.0.0 |
○ | gmx::gmx_mdrun(int, gmx_hw_inf[...] | mdrun.cpp:280 | gmx_mpi |
○ | gmx::gmx_mdrun(int, char**) | mdrun.cpp:82 | gmx_mpi |
○ | gmx::CommandLineModuleManager:[...] | cmdlinemodulemanager.cpp:569 | libgromacs_mpi.so.9.0.0 |
○ | main | gmx.cpp:58 | gmx_mpi |
○ | __libc_start_call_main | libc.so.6 |
Coverage (%) | Name | Source Location | Module |
---|---|---|---|
►78.52+ | gmx_pme_do(gmx_pme_t*, gmx::Ar[...] | pme.cpp:1664 | libgromacs_mpi.so.9.0.0 |
○ | CpuPpLongRangeNonbondeds::calc[...] | force.cpp:261 | libgromacs_mpi.so.9.0.0 |
○ | do_force(_IO_FILE*, t_commrec [...] | sim_util.cpp:2073 | libgromacs_mpi.so.9.0.0 |
○ | gmx::LegacySimulator::do_md() | md.cpp:1248 | libgromacs_mpi.so.9.0.0 |
○ | gmx::Mdrunner::mdrunner() | runner.cpp:2311 | libgromacs_mpi.so.9.0.0 |
○ | gmx::gmx_mdrun(int, gmx_hw_inf[...] | mdrun.cpp:280 | gmx_mpi |
○ | gmx::gmx_mdrun(int, char**) | mdrun.cpp:82 | gmx_mpi |
○ | gmx::CommandLineModuleManager:[...] | cmdlinemodulemanager.cpp:569 | libgromacs_mpi.so.9.0.0 |
○ | main | gmx.cpp:58 | gmx_mpi |
○ | __libc_start_call_main | libc.so.6 | |
►11.49+ | gmx_pme_do(gmx_pme_t*, gmx::Ar[...] | pme.cpp:1664 | libgromacs_mpi.so.9.0.0 |
○ | CpuPpLongRangeNonbondeds::calc[...] | force.cpp:261 | libgromacs_mpi.so.9.0.0 |
○ | do_force(_IO_FILE*, t_commrec [...] | sim_util.cpp:2073 | libgromacs_mpi.so.9.0.0 |
○ | gmx::LegacySimulator::do_md() | md.cpp:1248 | libgromacs_mpi.so.9.0.0 |
○ | gmx::Mdrunner::mdrunner() | runner.cpp:2311 | libgromacs_mpi.so.9.0.0 |
○ | gmx::gmx_mdrun(int, gmx_hw_inf[...] | mdrun.cpp:280 | gmx_mpi |
○ | gmx::gmx_mdrun(int, char**) | mdrun.cpp:82 | gmx_mpi |
○ | gmx::CommandLineModuleManager:[...] | cmdlinemodulemanager.cpp:569 | libgromacs_mpi.so.9.0.0 |
►9.99+ | gmx_pme_do(gmx_pme_t*, gmx::Ar[...] | pme.cpp:1664 | libgromacs_mpi.so.9.0.0 |
○ | CpuPpLongRangeNonbondeds::calc[...] | force.cpp:261 | libgromacs_mpi.so.9.0.0 |
○ | do_force(_IO_FILE*, t_commrec [...] | sim_util.cpp:2073 | libgromacs_mpi.so.9.0.0 |
○ | gmx::LegacySimulator::do_md() | md.cpp:1248 | libgromacs_mpi.so.9.0.0 |
○ | gmx::Mdrunner::mdrunner() | runner.cpp:2311 | libgromacs_mpi.so.9.0.0 |
○ | gmx::gmx_mdrun(int, gmx_hw_inf[...] | mdrun.cpp:280 | gmx_mpi |
○ | gmx::gmx_mdrun(int, char**) | mdrun.cpp:82 | gmx_mpi |
○ | gmx::CommandLineModuleManager:[...] | cmdlinemodulemanager.cpp:569 | libgromacs_mpi.so.9.0.0 |
○ | main | gmx.cpp:58 | gmx_mpi |
Coverage (%) | Name | Source Location | Module |
---|---|---|---|
►84.17+ | gmx_pme_do(gmx_pme_t*, gmx::Ar[...] | pme.cpp:1664 | libgromacs_mpi.so.9.0.0 |
○ | CpuPpLongRangeNonbondeds::calc[...] | force.cpp:261 | libgromacs_mpi.so.9.0.0 |
○ | do_force(_IO_FILE*, t_commrec [...] | sim_util.cpp:2073 | libgromacs_mpi.so.9.0.0 |
○ | gmx::LegacySimulator::do_md() | md.cpp:1248 | libgromacs_mpi.so.9.0.0 |
○ | gmx::Mdrunner::mdrunner() | runner.cpp:2311 | libgromacs_mpi.so.9.0.0 |
○ | gmx::gmx_mdrun(int, gmx_hw_inf[...] | mdrun.cpp:280 | gmx_mpi |
○ | gmx::gmx_mdrun(int, char**) | mdrun.cpp:82 | gmx_mpi |
○ | gmx::CommandLineModuleManager:[...] | cmdlinemodulemanager.cpp:569 | libgromacs_mpi.so.9.0.0 |
○ | main | gmx.cpp:58 | gmx_mpi |
○ | __libc_start_call_main | libc.so.6 | |
►9.89+ | gmx_pme_do(gmx_pme_t*, gmx::Ar[...] | pme.cpp:1664 | libgromacs_mpi.so.9.0.0 |
○ | CpuPpLongRangeNonbondeds::calc[...] | force.cpp:261 | libgromacs_mpi.so.9.0.0 |
○ | do_force(_IO_FILE*, t_commrec [...] | sim_util.cpp:2073 | libgromacs_mpi.so.9.0.0 |
○ | gmx::LegacySimulator::do_md() | md.cpp:1248 | libgromacs_mpi.so.9.0.0 |
○ | gmx::Mdrunner::mdrunner() | runner.cpp:2311 | libgromacs_mpi.so.9.0.0 |
○ | gmx::gmx_mdrun(int, gmx_hw_inf[...] | mdrun.cpp:280 | gmx_mpi |
○ | gmx::gmx_mdrun(int, char**) | mdrun.cpp:82 | gmx_mpi |
○ | gmx::CommandLineModuleManager:[...] | cmdlinemodulemanager.cpp:569 | libgromacs_mpi.so.9.0.0 |
►5.94+ | gmx_pme_do(gmx_pme_t*, gmx::Ar[...] | pme.cpp:1664 | libgromacs_mpi.so.9.0.0 |
○ | CpuPpLongRangeNonbondeds::calc[...] | force.cpp:261 | libgromacs_mpi.so.9.0.0 |
○ | do_force(_IO_FILE*, t_commrec [...] | sim_util.cpp:2073 | libgromacs_mpi.so.9.0.0 |
○ | gmx::LegacySimulator::do_md() | md.cpp:1248 | libgromacs_mpi.so.9.0.0 |
○ | gmx::Mdrunner::mdrunner() | runner.cpp:2311 | libgromacs_mpi.so.9.0.0 |
○ | gmx::gmx_mdrun(int, gmx_hw_inf[...] | mdrun.cpp:280 | gmx_mpi |
Coverage (%) | Name | Source Location | Module |
---|---|---|---|
►55.91+ | gmx_pme_do(gmx_pme_t*, gmx::Ar[...] | pme.cpp:1664 | libgromacs_mpi.so.9.0.0 |
○ | gmx_pmeonly(gmx_pme_t**, t_com[...] | stl_vector.h:1169 | libgromacs_mpi.so.9.0.0 |
○ | gmx::Mdrunner::mdrunner() | runner.cpp:2330 | libgromacs_mpi.so.9.0.0 |
○ | gmx::gmx_mdrun(int, gmx_hw_inf[...] | mdrun.cpp:280 | gmx_mpi |
►29.39+ | gmx_pme_do(gmx_pme_t*, gmx::Ar[...] | pme.cpp:1664 | libgromacs_mpi.so.9.0.0 |
○ | gmx_pmeonly(gmx_pme_t**, t_com[...] | stl_vector.h:1169 | libgromacs_mpi.so.9.0.0 |
○ | gmx::Mdrunner::mdrunner() | runner.cpp:2330 | libgromacs_mpi.so.9.0.0 |
►14.70+ | gmx_pme_do(gmx_pme_t*, gmx::Ar[...] | pme.cpp:1664 | libgromacs_mpi.so.9.0.0 |
○ | gmx_pmeonly(gmx_pme_t**, t_com[...] | stl_vector.h:1169 | libgromacs_mpi.so.9.0.0 |
○ | gmx::Mdrunner::mdrunner() | runner.cpp:2330 | libgromacs_mpi.so.9.0.0 |
○ | gmx::gmx_mdrun(int, gmx_hw_inf[...] | mdrun.cpp:280 | gmx_mpi |
○ | gmx::gmx_mdrun(int, char**) | mdrun.cpp:82 | gmx_mpi |
○ | gmx::CommandLineModuleManager:[...] | cmdlinemodulemanager.cpp:569 | libgromacs_mpi.so.9.0.0 |
○ | main | gmx.cpp:58 | gmx_mpi |
○ | __libc_start_call_main | libc.so.6 |
Coverage (%) | Name | Source Location | Module |
---|---|---|---|
►65.17+ | gmx_pme_do(gmx_pme_t*, gmx::Ar[...] | pme.cpp:1664 | libgromacs_mpi.so.9.0.0 |
○ | gmx_pmeonly(gmx_pme_t**, t_com[...] | stl_vector.h:1169 | libgromacs_mpi.so.9.0.0 |
○ | gmx::Mdrunner::mdrunner() | runner.cpp:2330 | libgromacs_mpi.so.9.0.0 |
○ | gmx::gmx_mdrun(int, gmx_hw_inf[...] | mdrun.cpp:280 | gmx_mpi |
○ | gmx::gmx_mdrun(int, char**) | mdrun.cpp:82 | gmx_mpi |
○ | gmx::CommandLineModuleManager:[...] | cmdlinemodulemanager.cpp:569 | libgromacs_mpi.so.9.0.0 |
○ | main | gmx.cpp:58 | gmx_mpi |
○ | __libc_start_call_main | libc.so.6 | |
►21.25+ | gmx_pme_do(gmx_pme_t*, gmx::Ar[...] | pme.cpp:1664 | libgromacs_mpi.so.9.0.0 |
○ | gmx_pmeonly(gmx_pme_t**, t_com[...] | stl_vector.h:1169 | libgromacs_mpi.so.9.0.0 |
○ | gmx::Mdrunner::mdrunner() | runner.cpp:2330 | libgromacs_mpi.so.9.0.0 |
○ | gmx::gmx_mdrun(int, gmx_hw_inf[...] | mdrun.cpp:280 | gmx_mpi |
►13.58+ | gmx_pme_do(gmx_pme_t*, gmx::Ar[...] | pme.cpp:1664 | libgromacs_mpi.so.9.0.0 |
○ | gmx_pmeonly(gmx_pme_t**, t_com[...] | stl_vector.h:1169 | libgromacs_mpi.so.9.0.0 |
○ | gmx::Mdrunner::mdrunner() | runner.cpp:2330 | libgromacs_mpi.so.9.0.0 |
Coverage (%) | Name | Source Location | Module |
---|---|---|---|
►44.54+ | gmx_pme_do(gmx_pme_t*, gmx::Ar[...] | pme.cpp:1664 | libgromacs_mpi.so.9.0.0 |
○ | gmx_pmeonly(gmx_pme_t**, t_com[...] | stl_vector.h:1169 | libgromacs_mpi.so.9.0.0 |
○ | gmx::Mdrunner::mdrunner() | runner.cpp:2330 | libgromacs_mpi.so.9.0.0 |
○ | gmx::gmx_mdrun(int, gmx_hw_inf[...] | mdrun.cpp:280 | gmx_mpi |
►35.65+ | gmx_pme_do(gmx_pme_t*, gmx::Ar[...] | pme.cpp:1664 | libgromacs_mpi.so.9.0.0 |
○ | gmx_pmeonly(gmx_pme_t**, t_com[...] | stl_vector.h:1169 | libgromacs_mpi.so.9.0.0 |
○ | gmx::Mdrunner::mdrunner() | runner.cpp:2330 | libgromacs_mpi.so.9.0.0 |
►19.81+ | gmx_pme_do(gmx_pme_t*, gmx::Ar[...] | pme.cpp:1664 | libgromacs_mpi.so.9.0.0 |
○ | gmx_pmeonly(gmx_pme_t**, t_com[...] | stl_vector.h:1169 | libgromacs_mpi.so.9.0.0 |
○ | gmx::Mdrunner::mdrunner() | runner.cpp:2330 | libgromacs_mpi.so.9.0.0 |
○ | gmx::gmx_mdrun(int, gmx_hw_inf[...] | mdrun.cpp:280 | gmx_mpi |
○ | gmx::gmx_mdrun(int, char**) | mdrun.cpp:82 | gmx_mpi |
○ | gmx::CommandLineModuleManager:[...] | cmdlinemodulemanager.cpp:569 | libgromacs_mpi.so.9.0.0 |
○ | main | gmx.cpp:58 | gmx_mpi |
○ | __libc_start_call_main | libc.so.6 |
Coverage (%) | Name | Source Location | Module |
---|---|---|---|
►100.00+ | gmx_pme_do(gmx_pme_t*, gmx::Ar[...] | pme.cpp:1664 | libgromacs_mpi.so.9.0.0 |
○ | gmx_pmeonly(gmx_pme_t**, t_com[...] | stl_vector.h:1169 | libgromacs_mpi.so.9.0.0 |
○ | gmx::Mdrunner::mdrunner() | runner.cpp:2330 | libgromacs_mpi.so.9.0.0 |
○ | gmx::gmx_mdrun(int, gmx_hw_inf[...] | mdrun.cpp:280 | gmx_mpi |
○ | gmx::gmx_mdrun(int, char**) | mdrun.cpp:82 | gmx_mpi |
○ | gmx::CommandLineModuleManager:[...] | cmdlinemodulemanager.cpp:569 | libgromacs_mpi.so.9.0.0 |
○ | main | gmx.cpp:58 | gmx_mpi |
○ | __libc_start_call_main | libc.so.6 |
Path / |
The code analyzed by CQA in that panel excludes loops and represents 0.00% of application time for run 1x1
Source file and lines | pme_redistribute.cpp:265-472 |
Module | libgromacs_mpi.so.9.0.0 |
nb instructions | 73 |
nb uops | 72 |
loop length | 260 |
used x86 registers | 14 |
used mmx registers | 0 |
used xmm registers | 0 |
used ymm registers | 0 |
used zmm registers | 0 |
nb stack references | 5 |
micro-operation queue | 12.00 cycles |
front end | 12.00 cycles |
ALU0/BRU0 | ALU1 | ALU2 | ALU3 | BRU1 | AGU0 | AGU1 | AGU2 | FP0 | FP1 | FP2 | FP3 | FP4 | FP5 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
uops | 8.25 | 8.25 | 8.25 | 8.25 | 4.00 | 5.00 | 5.00 | 5.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 |
cycles | 8.25 | 8.25 | 8.25 | 8.25 | 4.00 | 5.00 | 5.00 | 5.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 |
Cycles executing div or sqrt instructions | NA |
Front-end | 12.00 |
Dispatch | 8.25 |
Overall L1 | 12.00 |
all | 0% |
load | 0% |
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 | 0% |
all | 9% |
load | 1% |
store | 11% |
mul | NA (no mul vectorizable/vectorized instructions) |
add-sub | 12% |
fma | NA (no fma vectorizable/vectorized instructions) |
div/sqrt | NA (no div/sqrt vectorizable/vectorized instructions) |
other | 8% |
Instruction | Nb FU | ALU0/BRU0 | ALU1 | ALU2 | ALU3 | BRU1 | AGU0 | AGU1 | AGU2 | FP0 | FP1 | FP2 | FP3 | FP4 | FP5 | Latency | Recip. throughput | Vectorization |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
PUSH %RBP | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50 | N/A |
MOV %RSP,%RBP | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 | N/A |
PUSH %R15 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50 | N/A |
PUSH %R14 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50 | N/A |
PUSH %R13 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50 | N/A |
PUSH %R12 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50 | N/A |
PUSH %RBX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50 | N/A |
SUB $0x58,%RSP | 1 | 0.25 | 0.25 | 0.25 | 0.25 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.25 | N/A |
MOV %R8D,-0x54(%RBP) | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 4 | 0.50 | scal (6.3%) |
MOV %RCX,-0x60(%RBP) | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 4 | 0.50 | scal (12.5%) |
MOV %RDX,%RBX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 | scal (12.5%) |
MOV %RSI,%R10 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 | N/A |
MOV %RDI,-0x50(%RBP) | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 4 | 0.50 | scal (12.5%) |
MOV 0x4(%RSI),%EAX | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
MOV 0x28(%RSI),%ECX | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
ADD %ECX,%ECX | 1 | 0.25 | 0.25 | 0.25 | 0.25 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.25 | N/A |
DEC %EAX | 1 | 0.25 | 0.25 | 0.25 | 0.25 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.25 | N/A |
CMP %ECX,%EAX | 1 | 0.25 | 0.25 | 0.25 | 0.25 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.25 | scal (6.3%) |
CMOVGE %ECX,%EAX | 1 | 0.50 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50 | N/A |
TEST %EAX,%EAX | 1 | 0.25 | 0.25 | 0.25 | 0.25 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.25 | scal (6.3%) |
MOV %RSI,-0x30(%RBP) | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 4 | 0.50 | scal (12.5%) |
JLE c0a2ae <_Z14dd_pmeredist_fP9gmx_pme_tP11PmeAtomCommN3gmx8ArrayRefINS3_11BasicVectorIfEEEEb+0x1ae> | 1 | 0.50 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50-1 | N/A |
MOV 0x60(%R10),%RCX | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
MOV (%RCX),%RCX | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
MOVSXD 0x8(%R10),%RDX | 1 | 0.25 | 0.25 | 0.25 | 0.25 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.33 | N/A |
MOV (%RCX,%RDX,4),%EDX | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
MOV %EAX,%ESI | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 | N/A |
XOR %R13D,%R13D | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.25 | scal (6.3%) |
MOV $0x8,%R15D | 1 | 0.25 | 0.25 | 0.25 | 0.25 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.25 | scal (6.3%) |
XOR %R14D,%R14D | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.25 | scal (6.3%) |
MOV %RSI,-0x68(%RBP) | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 4 | 0.50 | scal (12.5%) |
JMP c0a1c0 <_Z14dd_pmeredist_fP9gmx_pme_tP11PmeAtomCommN3gmx8ArrayRefINS3_11BasicVectorIfEEEEb+0xc0> | 1 | 0.50 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | N/A |
MOV -0x60(%RBP),%RDX | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
SUB %RBX,%RDX | 1 | 0.25 | 0.25 | 0.25 | 0.25 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.25 | N/A |
CMPB $0,-0x54(%RBP) | 1 | 0.25 | 0.25 | 0.25 | 0.25 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.33 | scal (1.6%) |
JE c0a395 <_Z14dd_pmeredist_fP9gmx_pme_tP11PmeAtomCommN3gmx8ArrayRefINS3_11BasicVectorIfEEEEb+0x295> | 1 | 0.50 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50-1 | N/A |
TEST %RDX,%RDX | 1 | 0.25 | 0.25 | 0.25 | 0.25 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.25 | scal (12.5%) |
JLE c0a469 <_Z14dd_pmeredist_fP9gmx_pme_tP11PmeAtomCommN3gmx8ArrayRefINS3_11BasicVectorIfEEEEb+0x369> | 1 | 0.50 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50-1 | N/A |
MOV $-0x5555555555555555,%RAX | 1 | 0.25 | 0.25 | 0.25 | 0.25 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.33 | N/A |
MULX %RAX,%RDX,%RDX | 2 | 0.25 | 1.25 | 0.25 | 0.25 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 3-4 | 1 | N/A |
SHR $0x3,%RDX | 1 | 0 | 0.50 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50 | N/A |
MOV 0x48(%R10),%RAX | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
CMP $0x2,%RDX | 1 | 0.25 | 0.25 | 0.25 | 0.25 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.25 | scal (12.5%) |
MOV $0x1,%ECX | 1 | 0.25 | 0.25 | 0.25 | 0.25 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.25 | N/A |
CMOVGE %RDX,%RCX | 1 | 0.50 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50 | N/A |
ADD $0x8,%RBX | 1 | 0.25 | 0.25 | 0.25 | 0.25 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.25 | scal (12.5%) |
XOR %EDX,%EDX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.25 | N/A |
XOR %ESI,%ESI | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.25 | N/A |
JMP c0a356 <_Z14dd_pmeredist_fP9gmx_pme_tP11PmeAtomCommN3gmx8ArrayRefINS3_11BasicVectorIfEEEEb+0x256> | 1 | 0.50 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | N/A |
NOPW %CS:(%RAX,%RAX,1) | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.09 | N/A |
TEST %RDX,%RDX | 1 | 0.25 | 0.25 | 0.25 | 0.25 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.25 | scal (12.5%) |
JLE c0a469 <_Z14dd_pmeredist_fP9gmx_pme_tP11PmeAtomCommN3gmx8ArrayRefINS3_11BasicVectorIfEEEEb+0x369> | 1 | 0.50 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50-1 | N/A |
MOV $-0x5555555555555555,%RAX | 1 | 0.25 | 0.25 | 0.25 | 0.25 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.33 | N/A |
MULX %RAX,%RDX,%RDX | 2 | 0.25 | 1.25 | 0.25 | 0.25 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 3-4 | 1 | N/A |
SHR $0x3,%RDX | 1 | 0 | 0.50 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50 | N/A |
MOV 0x48(%R10),%RAX | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
CMP $0x2,%RDX | 1 | 0.25 | 0.25 | 0.25 | 0.25 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.25 | scal (12.5%) |
MOV $0x1,%ECX | 1 | 0.25 | 0.25 | 0.25 | 0.25 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.25 | N/A |
CMOVGE %RDX,%RCX | 1 | 0.50 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50 | N/A |
ADD $0x8,%RBX | 1 | 0.25 | 0.25 | 0.25 | 0.25 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.25 | scal (12.5%) |
XOR %EDX,%EDX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.25 | N/A |
XOR %ESI,%ESI | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.25 | N/A |
JMP c0a421 <_Z14dd_pmeredist_fP9gmx_pme_tP11PmeAtomCommN3gmx8ArrayRefINS3_11BasicVectorIfEEEEb+0x321> | 1 | 0.50 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | N/A |
NOPL (%RAX) | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.09 | N/A |
ADD $0x58,%RSP | 1 | 0.25 | 0.25 | 0.25 | 0.25 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.25 | N/A |
POP %RBX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.33 | N/A |
POP %R12 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.33 | N/A |
POP %R13 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.33 | N/A |
POP %R14 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.33 | N/A |
POP %R15 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.33 | N/A |
POP %RBP | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.33 | N/A |
RET | 1 | 0.50 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50 | N/A |
NOPL (%RAX,%RAX,1) | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.09 | N/A |
The code analyzed by CQA in that panel excludes loops and represents 0.00% of application time for run 1x1
Source file and lines | pme_redistribute.cpp:265-472 |
Module | libgromacs_mpi.so.9.0.0 |
nb instructions | 73 |
nb uops | 72 |
loop length | 260 |
used x86 registers | 14 |
used mmx registers | 0 |
used xmm registers | 0 |
used ymm registers | 0 |
used zmm registers | 0 |
nb stack references | 5 |
micro-operation queue | 12.00 cycles |
front end | 12.00 cycles |
ALU0/BRU0 | ALU1 | ALU2 | ALU3 | BRU1 | AGU0 | AGU1 | AGU2 | FP0 | FP1 | FP2 | FP3 | FP4 | FP5 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
uops | 8.25 | 8.25 | 8.25 | 8.25 | 4.00 | 5.00 | 5.00 | 5.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 |
cycles | 8.25 | 8.25 | 8.25 | 8.25 | 4.00 | 5.00 | 5.00 | 5.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 |
Cycles executing div or sqrt instructions | NA |
Front-end | 12.00 |
Dispatch | 8.25 |
Overall L1 | 12.00 |
all | 0% |
load | 0% |
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 | 0% |
all | 9% |
load | 1% |
store | 11% |
mul | NA (no mul vectorizable/vectorized instructions) |
add-sub | 12% |
fma | NA (no fma vectorizable/vectorized instructions) |
div/sqrt | NA (no div/sqrt vectorizable/vectorized instructions) |
other | 8% |
Instruction | Nb FU | ALU0/BRU0 | ALU1 | ALU2 | ALU3 | BRU1 | AGU0 | AGU1 | AGU2 | FP0 | FP1 | FP2 | FP3 | FP4 | FP5 | Latency | Recip. throughput | Vectorization |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
PUSH %RBP | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50 | N/A |
MOV %RSP,%RBP | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 | N/A |
PUSH %R15 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50 | N/A |
PUSH %R14 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50 | N/A |
PUSH %R13 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50 | N/A |
PUSH %R12 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50 | N/A |
PUSH %RBX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50 | N/A |
SUB $0x58,%RSP | 1 | 0.25 | 0.25 | 0.25 | 0.25 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.25 | N/A |
MOV %R8D,-0x54(%RBP) | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 4 | 0.50 | scal (6.3%) |
MOV %RCX,-0x60(%RBP) | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 4 | 0.50 | scal (12.5%) |
MOV %RDX,%RBX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 | scal (12.5%) |
MOV %RSI,%R10 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 | N/A |
MOV %RDI,-0x50(%RBP) | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 4 | 0.50 | scal (12.5%) |
MOV 0x4(%RSI),%EAX | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
MOV 0x28(%RSI),%ECX | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
ADD %ECX,%ECX | 1 | 0.25 | 0.25 | 0.25 | 0.25 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.25 | N/A |
DEC %EAX | 1 | 0.25 | 0.25 | 0.25 | 0.25 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.25 | N/A |
CMP %ECX,%EAX | 1 | 0.25 | 0.25 | 0.25 | 0.25 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.25 | scal (6.3%) |
CMOVGE %ECX,%EAX | 1 | 0.50 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50 | N/A |
TEST %EAX,%EAX | 1 | 0.25 | 0.25 | 0.25 | 0.25 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.25 | scal (6.3%) |
MOV %RSI,-0x30(%RBP) | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 4 | 0.50 | scal (12.5%) |
JLE c0a2ae <_Z14dd_pmeredist_fP9gmx_pme_tP11PmeAtomCommN3gmx8ArrayRefINS3_11BasicVectorIfEEEEb+0x1ae> | 1 | 0.50 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50-1 | N/A |
MOV 0x60(%R10),%RCX | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
MOV (%RCX),%RCX | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
MOVSXD 0x8(%R10),%RDX | 1 | 0.25 | 0.25 | 0.25 | 0.25 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.33 | N/A |
MOV (%RCX,%RDX,4),%EDX | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
MOV %EAX,%ESI | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 | N/A |
XOR %R13D,%R13D | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.25 | scal (6.3%) |
MOV $0x8,%R15D | 1 | 0.25 | 0.25 | 0.25 | 0.25 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.25 | scal (6.3%) |
XOR %R14D,%R14D | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.25 | scal (6.3%) |
MOV %RSI,-0x68(%RBP) | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 4 | 0.50 | scal (12.5%) |
JMP c0a1c0 <_Z14dd_pmeredist_fP9gmx_pme_tP11PmeAtomCommN3gmx8ArrayRefINS3_11BasicVectorIfEEEEb+0xc0> | 1 | 0.50 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | N/A |
MOV -0x60(%RBP),%RDX | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
SUB %RBX,%RDX | 1 | 0.25 | 0.25 | 0.25 | 0.25 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.25 | N/A |
CMPB $0,-0x54(%RBP) | 1 | 0.25 | 0.25 | 0.25 | 0.25 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.33 | scal (1.6%) |
JE c0a395 <_Z14dd_pmeredist_fP9gmx_pme_tP11PmeAtomCommN3gmx8ArrayRefINS3_11BasicVectorIfEEEEb+0x295> | 1 | 0.50 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50-1 | N/A |
TEST %RDX,%RDX | 1 | 0.25 | 0.25 | 0.25 | 0.25 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.25 | scal (12.5%) |
JLE c0a469 <_Z14dd_pmeredist_fP9gmx_pme_tP11PmeAtomCommN3gmx8ArrayRefINS3_11BasicVectorIfEEEEb+0x369> | 1 | 0.50 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50-1 | N/A |
MOV $-0x5555555555555555,%RAX | 1 | 0.25 | 0.25 | 0.25 | 0.25 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.33 | N/A |
MULX %RAX,%RDX,%RDX | 2 | 0.25 | 1.25 | 0.25 | 0.25 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 3-4 | 1 | N/A |
SHR $0x3,%RDX | 1 | 0 | 0.50 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50 | N/A |
MOV 0x48(%R10),%RAX | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
CMP $0x2,%RDX | 1 | 0.25 | 0.25 | 0.25 | 0.25 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.25 | scal (12.5%) |
MOV $0x1,%ECX | 1 | 0.25 | 0.25 | 0.25 | 0.25 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.25 | N/A |
CMOVGE %RDX,%RCX | 1 | 0.50 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50 | N/A |
ADD $0x8,%RBX | 1 | 0.25 | 0.25 | 0.25 | 0.25 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.25 | scal (12.5%) |
XOR %EDX,%EDX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.25 | N/A |
XOR %ESI,%ESI | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.25 | N/A |
JMP c0a356 <_Z14dd_pmeredist_fP9gmx_pme_tP11PmeAtomCommN3gmx8ArrayRefINS3_11BasicVectorIfEEEEb+0x256> | 1 | 0.50 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | N/A |
NOPW %CS:(%RAX,%RAX,1) | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.09 | N/A |
TEST %RDX,%RDX | 1 | 0.25 | 0.25 | 0.25 | 0.25 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.25 | scal (12.5%) |
JLE c0a469 <_Z14dd_pmeredist_fP9gmx_pme_tP11PmeAtomCommN3gmx8ArrayRefINS3_11BasicVectorIfEEEEb+0x369> | 1 | 0.50 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50-1 | N/A |
MOV $-0x5555555555555555,%RAX | 1 | 0.25 | 0.25 | 0.25 | 0.25 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.33 | N/A |
MULX %RAX,%RDX,%RDX | 2 | 0.25 | 1.25 | 0.25 | 0.25 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 3-4 | 1 | N/A |
SHR $0x3,%RDX | 1 | 0 | 0.50 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50 | N/A |
MOV 0x48(%R10),%RAX | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
CMP $0x2,%RDX | 1 | 0.25 | 0.25 | 0.25 | 0.25 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.25 | scal (12.5%) |
MOV $0x1,%ECX | 1 | 0.25 | 0.25 | 0.25 | 0.25 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.25 | N/A |
CMOVGE %RDX,%RCX | 1 | 0.50 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50 | N/A |
ADD $0x8,%RBX | 1 | 0.25 | 0.25 | 0.25 | 0.25 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.25 | scal (12.5%) |
XOR %EDX,%EDX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.25 | N/A |
XOR %ESI,%ESI | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.25 | N/A |
JMP c0a421 <_Z14dd_pmeredist_fP9gmx_pme_tP11PmeAtomCommN3gmx8ArrayRefINS3_11BasicVectorIfEEEEb+0x321> | 1 | 0.50 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | N/A |
NOPL (%RAX) | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.09 | N/A |
ADD $0x58,%RSP | 1 | 0.25 | 0.25 | 0.25 | 0.25 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.25 | N/A |
POP %RBX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.33 | N/A |
POP %R12 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.33 | N/A |
POP %R13 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.33 | N/A |
POP %R14 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.33 | N/A |
POP %R15 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.33 | N/A |
POP %RBP | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.33 | N/A |
RET | 1 | 0.50 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50 | N/A |
NOPL (%RAX,%RAX,1) | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.09 | N/A |
Run 1x1 | Number processes: 1Number processes per node: 1OMP_NUM_THREADS: 1 |
---|---|
Run 2x1 | Number processes: 2Number processes per node: 2OMP_NUM_THREADS: 1 |
Run 4x1 | Number processes: 4Number processes per node: 4OMP_NUM_THREADS: 1 |
Run 8x1 | Number processes: 8Number processes per node: 8OMP_NUM_THREADS: 1 |
Run 16x1 | Number processes: 16Number processes per node: 16OMP_NUM_THREADS: 1 |
Run 32x1 | Number processes: 32Number processes per node: 32OMP_NUM_THREADS: 1 |
Run 64x1 | Number processes: 64Number processes per node: 64OMP_NUM_THREADS: 1 |
Run 128x1 | Number processes: 128Number processes per node: 128OMP_NUM_THREADS: 1 |
Run 192x1 | Number processes: 192Number nodes: 1Number processes per node: 192Run Command: <executable> mdrun -s ion_channel.tpr -nsteps 10000 -pin on -deffnm aoccMPI Command: mpirun -genv I_MPI_FABRICS=shm -n <number_processes>Dataset: Run Directory: .OMP_NUM_THREADS: 1 |
(1x1) Efficiency | (1x1) Potential Speed-Up (%) | (2x1) Efficiency | (2x1) Potential Speed-Up (%) | (4x1) Efficiency | (4x1) Potential Speed-Up (%) | (8x1) Efficiency | (8x1) Potential Speed-Up (%) | (16x1) Efficiency | (16x1) Potential Speed-Up (%) | (32x1) Efficiency | (32x1) Potential Speed-Up (%) | (64x1) Efficiency | (64x1) Potential Speed-Up (%) | (128x1) Efficiency | (128x1) Potential Speed-Up (%) | (192x1) Efficiency | (192x1) Potential Speed-Up (%) |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | 0 | 1 | 0 | 1 | 0 | 1 | 0 | 1 | 0 | 1 | 0 | 1 | 0 | 1 | 0 |
Run | Number of threads | Efficiency (ideal is 1) | Speedup | Ideal Speedup | Time (s) | Coverage (%) |
---|---|---|---|---|---|---|
1x1 | ||||||
2x1 | 2 | 1 | 1 | 2 | 0.92999988794327 | 0.17925477027893 |
4x1 | 4 | 1 | 1 | 4 | 0.64000004529953 | 0.21588648855686 |
8x1 | 8 | 1 | 1 | 8 | 0.59999990463257 | 0.29539561271667 |
16x1 | 16 | 1 | 1 | 16 | 0.2849999666214 | 0.24935737252235 |
32x1 | 12 | 1 | 1 | 32 | 0.3699999153614 | 0.16984321177006 |
64x1 | 24 | 1 | 1 | 64 | 0.26499995589256 | 0.12347654998302 |
128x1 | 44 | 1 | 1 | 128 | 0.1499999910593 | 0.21776460111141 |
192x1 | 64 | 1 | 1 | 192 | 0.10999997705221 | 0.16463449597359 |
Name | Coverage (%) | Time (s) |
---|---|---|
▼dd_pmeredist_f(gmx_pme_t*, PmeAtomComm*, gmx::ArrayRef | 0.16 | 0.02 |
○Loop 17419 - pme_redistribute.cpp:455-468 - libgromacs_mpi.so.9.0.0 | 0.16 | 0.06 |
○Loop 17421 - pme_redistribute.cpp:265-430 - libgromacs_mpi.so.9.0.0 | 0.00 | 0.00 |
○Loop 17420 - pme_redistribute.cpp:436-449 - libgromacs_mpi.so.9.0.0 | 0.00 | 0.00 |