Function: int assignInteractionsForAtom<true>(AtomIndexSet const&, reverse_ilist_t const&, gmx_ga2la ... | Module: libgromacs_mpi.so.9.0.0 | Source: localtopology.cpp:408-580 [...] | Coverage (incl. loops): NA% | (excl. loops): NA% |
---|
Function: int assignInteractionsForAtom<true>(AtomIndexSet const&, reverse_ilist_t const&, gmx_ga2la ... | Module: libgromacs_mpi.so.9.0.0 | Source: localtopology.cpp:408-580 [...] | Coverage (incl. loops): NA% | (excl. loops): NA% |
---|
/home/eoseret/gromacs-2024.2/src/gromacs/domdec/hashedmap.h: 274 - 281 |
-------------------------------------------------------------------------------- |
274: int ind = (key & bitMask_); |
275: do |
276: { |
277: if (table_[ind].key == key) |
278: { |
279: return &table_[ind].value; |
280: } |
281: ind = table_[ind].next; |
/usr/lib/gcc/x86_64-redhat-linux/11/../../../../include/c++/11/array: 57 - 57 |
-------------------------------------------------------------------------------- |
57: { return const_cast<_Tp&>(__t[__n]); } |
/home/eoseret/gromacs-2024.2/api/legacy/include/gromacs/topology/ifunc.h: 240 - 240 |
-------------------------------------------------------------------------------- |
240: return interaction_function[ftype].nratoms; |
/home/eoseret/gromacs-2024.2/src/gromacs/domdec/localtopology.cpp: 408 - 580 |
-------------------------------------------------------------------------------- |
408: { |
[...] |
415: int j = reverseIlist.index[atomIndexSet.withinMolecule]; |
416: const int indexEnd = reverseIlist.index[atomIndexSet.withinMolecule + 1]; |
417: while (j < indexEnd) |
418: { |
419: int tiatoms[1 + MAXATOMLIST]; |
420: |
421: const int ftype = rtil[j++]; |
422: auto iatoms = gmx::constArrayRefFromArray(rtil.data() + j, rtil.size() - j); |
423: const int nral = NRAL(ftype); |
424: if (interaction_function[ftype].flags & IF_VSITE) |
425: { |
426: /* The vsite construction goes where the vsite itself is */ |
427: if (iz == 0) |
428: { |
429: add_vsite(ga2la, reverseIlist, ftype, nral, true, atomIndexSet, iatoms, idef); |
[...] |
437: tiatoms[0] = iatoms[0]; |
438: |
439: if (nral == 1) |
440: { |
441: /* Assign single-body interactions to the home zone. |
442: * Position restraints are not handled here, but separately. |
443: */ |
444: if (iz == 0 && !(ftype == F_POSRES || ftype == F_FBPOSRES)) |
445: { |
446: bUse = true; |
447: tiatoms[1] = atomIndexSet.local; |
[...] |
456: const int k_gl = atomIndexSet.global + iatoms[2] - atomIndexSet.withinMolecule; |
457: if constexpr (haveSingleDomain) |
458: { |
459: // All atoms are local, we can assign without checks |
460: bUse = true; |
461: tiatoms[1] = atomIndexSet.local; |
462: tiatoms[2] = ga2la.find(k_gl)->la; |
[...] |
506: for (int k = 1; k <= nral && bUse; k++) |
507: { |
508: /* Get the global index using the offset in the molecule */ |
509: const int k_gl = atomIndexSet.global + iatoms[k] - atomIndexSet.withinMolecule; |
510: const auto* entry = ga2la.find(k_gl); |
511: if constexpr (haveSingleDomain) |
512: { |
513: // All atoms are local, we can assign without checks |
514: tiatoms[k] = entry->la; |
[...] |
570: if (ddBondedChecking == DDBondedChecking::All |
571: || !(interaction_function[ftype].flags & IF_LIMZERO)) |
572: { |
573: numBondedInteractions++; |
574: } |
575: } |
576: } |
577: j += 1 + nral_rt(ftype); |
578: } |
579: |
580: return numBondedInteractions; |
/usr/lib/gcc/x86_64-redhat-linux/11/../../../../include/c++/11/bits/stl_vector.h: 919 - 1798 |
-------------------------------------------------------------------------------- |
919: { return size_type(this->_M_impl._M_finish - this->_M_impl._M_start); } |
[...] |
939: if (__new_size > size()) |
940: _M_default_append(__new_size - size()); |
941: else if (__new_size < size()) |
942: _M_erase_at_end(this->_M_impl._M_start + __new_size); |
[...] |
1046: return *(this->_M_impl._M_start + __n); |
[...] |
1064: return *(this->_M_impl._M_start + __n); |
[...] |
1794: if (size_type __n = this->_M_impl._M_finish - __pos) |
1795: { |
1796: std::_Destroy(__pos, this->_M_impl._M_finish, |
1797: _M_get_Tp_allocator()); |
1798: this->_M_impl._M_finish = __pos; |
/home/eoseret/gromacs-2024.2/api/legacy/include/gromacs/utility/arrayref.h: 72 - 180 |
-------------------------------------------------------------------------------- |
72: constexpr explicit ArrayRefIter(T* it) noexcept : it_(it) {} |
[...] |
180: ArrayRef(U&& o) : begin_(o.data()), end_(o.data() + o.size()) |
/home/eoseret/gromacs-2024.2/src/gromacs/domdec/ga2la.h: 112 - 114 |
-------------------------------------------------------------------------------- |
112: if (usingDirect_) |
113: { |
114: return (data_.direct[a_gl].cell == -1) ? nullptr : &(data_.direct[a_gl]); |
/home/eoseret/gromacs-2024.2/api/legacy/include/gromacs/topology/idef.h: 243 - 247 |
-------------------------------------------------------------------------------- |
243: iatoms.resize(iatoms.size() + 1 + numAtoms); |
244: iatoms[oldSize] = parameterType; |
245: for (int i = 0; i < numAtoms; i++) |
246: { |
247: iatoms[oldSize + 1 + i] = atoms[i]; |
0x6ad8b0 PUSH %RBP |
0x6ad8b1 MOV %RSP,%RBP |
0x6ad8b4 PUSH %R15 |
0x6ad8b6 PUSH %R14 |
0x6ad8b8 PUSH %R13 |
0x6ad8ba PUSH %R12 |
0x6ad8bc PUSH %RBX |
0x6ad8bd SUB $0xb8,%RSP |
0x6ad8c4 MOV %R9D,-0x64(%RBP) |
0x6ad8c8 MOV %R8D,-0x3c(%RBP) |
0x6ad8cc MOV %RCX,-0x98(%RBP) |
0x6ad8d3 MOV %RSI,-0x60(%RBP) |
0x6ad8d7 MOV (%RSI),%RAX |
0x6ad8da MOV %RDI,-0x50(%RBP) |
0x6ad8de MOVSXD 0x8(%RDI),%RCX |
0x6ad8e2 MOV (%RAX,%RCX,4),%R12D |
0x6ad8e6 MOV 0x4(%RAX,%RCX,4),%EBX |
0x6ad8ea XOR %EAX,%EAX |
0x6ad8ec MOV %RAX,-0x58(%RBP) |
0x6ad8f0 CMP %EBX,%R12D |
0x6ad8f3 JGE 6ade57 |
0x6ad8f9 MOV %RDX,%R13 |
0x6ad8fc MOV -0x60(%RBP),%RAX |
0x6ad900 MOV 0x18(%RAX),%R14 |
0x6ad904 MOV %R14,-0x90(%RBP) |
0x6ad90b TEST %R14,%R14 |
0x6ad90e JE 6ad91f |
0x6ad910 MOV -0x60(%RBP),%RAX |
0x6ad914 MOV 0x20(%RAX),%RAX |
0x6ad918 MOV %RAX,-0x90(%RBP) |
0x6ad91f MOV -0x98(%RBP),%RAX |
0x6ad926 ADD $0x40,%RAX |
0x6ad92a MOV %RAX,-0xb8(%RBP) |
0x6ad931 LEA 0x4(%R14),%RAX |
0x6ad935 MOV %RAX,-0x88(%RBP) |
0x6ad93c XOR %EAX,%EAX |
0x6ad93e MOV %RAX,-0x58(%RBP) |
0x6ad942 MOV 0x951a7f(%RIP),%R15 |
0x6ad949 MOV %R14,-0xa0(%RBP) |
0x6ad950 MOV %EBX,-0x2c(%RBP) |
0x6ad953 MOV %R13,-0x48(%RBP) |
0x6ad957 JMP 6ad985 |
0x6ad959 NOPL (%RAX) |
(3331) 0x6ad960 CMPL $0,-0x3c(%RBP) |
(3331) 0x6ad964 JE 6ada04 |
(3331) 0x6ad96a MOV %R11D,%EDI |
(3331) 0x6ad96d VZEROUPPER |
(3331) 0x6ad970 CALL fa92e0 <@plt_start@+0x5e30> |
(3331) 0x6ad975 ADD %EAX,%R12D |
(3331) 0x6ad978 ADD $0x2,%R12D |
(3331) 0x6ad97c CMP %EBX,%R12D |
(3331) 0x6ad97f JGE 6ade57 |
(3331) 0x6ad985 MOVSXD %R12D,%RDI |
(3331) 0x6ad988 MOVSXD (%R14,%RDI,4),%R11 |
(3331) 0x6ad98c LEA (%R14,%RDI,4),%RAX |
(3331) 0x6ad990 ADD $0x4,%RAX |
(3331) 0x6ad994 MOV %R11,%RDX |
(3331) 0x6ad997 SAL $0x5,%RDX |
(3331) 0x6ad99b MOV 0x10(%R15,%RDX,1),%ECX |
(3331) 0x6ad9a0 TESTB $0x2,0x1c(%R15,%RDX,1) |
(3331) 0x6ad9a6 JNE 6ad960 |
(3331) 0x6ad9a8 MOV (%RAX),%ESI |
(3331) 0x6ad9aa CMP $0x1,%ECX |
(3331) 0x6ad9ad MOV %RCX,-0x38(%RBP) |
(3331) 0x6ad9b1 JE 6ada5f |
(3331) 0x6ad9b7 CMP $0x2,%ECX |
(3331) 0x6ad9ba MOV %RDX,-0xa8(%RBP) |
(3331) 0x6ad9c1 MOV %ESI,-0x30(%RBP) |
(3331) 0x6ad9c4 JNE 6ada90 |
(3331) 0x6ad9ca MOV 0x8(%RAX),%EAX |
(3331) 0x6ad9cd MOV -0x50(%RBP),%RDX |
(3331) 0x6ad9d1 ADD 0x4(%RDX),%EAX |
(3331) 0x6ad9d4 MOV (%RDX),%ECX |
(3331) 0x6ad9d6 SUB 0x8(%RDX),%EAX |
(3331) 0x6ad9d9 MOV %ECX,-0x7c(%RBP) |
(3331) 0x6ad9dc CMPB $0,0x28(%R13) |
(3331) 0x6ad9e1 JE 6adb50 |
(3331) 0x6ad9e7 CLTQ |
(3331) 0x6ad9e9 MOV (%R13),%RCX |
(3331) 0x6ad9ed LEA (%RCX,%RAX,8),%RDX |
(3331) 0x6ad9f1 CMPL $-0x1,0x4(%RCX,%RAX,8) |
(3331) 0x6ad9f6 MOV $0,%EAX |
(3331) 0x6ad9fb CMOVNE %RDX,%RAX |
(3331) 0x6ad9ff JMP 6adb90 |
(3331) 0x6ada04 MOV %RAX,-0xc8(%RBP) |
(3331) 0x6ada0b MOV -0x90(%RBP),%RAX |
(3331) 0x6ada12 MOV %RAX,-0xc0(%RBP) |
(3331) 0x6ada19 VMOVDQU -0xc8(%RBP),%XMM0 |
(3331) 0x6ada21 VMOVDQU %XMM0,(%RSP) |
(3331) 0x6ada26 MOV -0x98(%RBP),%RAX |
(3331) 0x6ada2d MOV %RAX,0x10(%RSP) |
(3331) 0x6ada32 MOV %R13,%RDI |
(3331) 0x6ada35 MOV -0x60(%RBP),%RSI |
(3331) 0x6ada39 MOV %R11D,%EDX |
(3331) 0x6ada3c MOV $0x1,%R8D |
(3331) 0x6ada42 MOV -0x50(%RBP),%R9 |
(3331) 0x6ada46 MOV %R13,%RBX |
(3331) 0x6ada49 MOV %R11,%R13 |
(3331) 0x6ada4c CALL 6ae3e0 <_ZL9add_vsiteRK11gmx_ga2la_tRK15reverse_ilist_tiibRK12AtomIndexSetN3gmx8ArrayRefIKiEEP22InteractionDefinitions> |
(3331) 0x6ada51 MOV %R13,%R11 |
(3331) 0x6ada54 MOV %RBX,%R13 |
(3331) 0x6ada57 MOV -0x2c(%RBP),%EBX |
(3331) 0x6ada5a JMP 6ad96a |
(3331) 0x6ada5f CMPL $0,-0x3c(%RBP) |
(3331) 0x6ada63 JNE 6ad96a |
(3331) 0x6ada69 MOV %R11D,%EAX |
(3331) 0x6ada6c AND $-0x2,%EAX |
(3331) 0x6ada6f CMP $0x34,%EAX |
(3331) 0x6ada72 JE 6ad96a |
(3331) 0x6ada78 MOV %ESI,-0x30(%RBP) |
(3331) 0x6ada7b MOV %RDX,-0xa8(%RBP) |
(3331) 0x6ada82 MOV -0x50(%RBP),%RAX |
(3331) 0x6ada86 MOV (%RAX),%EAX |
(3331) 0x6ada88 MOV %EAX,-0x7c(%RBP) |
(3331) 0x6ada8b JMP 6add80 |
(3331) 0x6ada90 TEST %ECX,%ECX |
(3331) 0x6ada92 JLE 6add80 |
(3331) 0x6ada98 MOV -0x50(%RBP),%RCX |
(3331) 0x6ada9c MOV 0x4(%RCX),%EDX |
(3331) 0x6ada9f MOV 0x8(%RCX),%ESI |
(3331) 0x6adaa2 MOV -0x38(%RBP),%R9 |
(3331) 0x6adaa6 LEA 0x1(%R9),%R8 |
(3331) 0x6adaaa CMPB $0,0x28(%R13) |
(3331) 0x6adaaf MOV (%R13),%RCX |
(3331) 0x6adab3 JE 6adb9a |
(3331) 0x6adab9 MOV $0x1,%R10D |
(3331) 0x6adabf CMP $0x4,%R9D |
(3331) 0x6adac3 JB 6add60 |
(3331) 0x6adac9 INC %RDI |
(3331) 0x6adacc MOV -0x38(%RBP),%R9 |
(3331) 0x6adad0 MOV %R11,%R15 |
(3331) 0x6adad3 CMP $0x8,%R9D |
(3331) 0x6adad7 JAE 6adccb |
(3331) 0x6adadd XOR %R9D,%R9D |
(3331) 0x6adae0 MOV -0x38(%RBP),%R11 |
(3331) 0x6adae4 AND $-0x4,%R11D |
(3331) 0x6adae8 LEA 0x1(%R11),%R10 |
(3331) 0x6adaec VPBROADCASTD %EDX,%XMM0 |
(3331) 0x6adaf2 VPBROADCASTD %ESI,%XMM1 |
(3331) 0x6adaf8 MOV -0x88(%RBP),%R14 |
(3331) 0x6adaff LEA (%R14,%RDI,4),%RDI |
(3331) 0x6adb03 NOPW %CS:(%RAX,%RAX,1) |
(3338) 0x6adb10 VPADDD (%RDI,%R9,4),%XMM0,%XMM2 |
(3338) 0x6adb16 VPSUBD %XMM1,%XMM2,%XMM2 |
(3338) 0x6adb1a VPMOVSXDQ %XMM2,%YMM2 |
(3338) 0x6adb1f KXNORW %K0,%K0,%K1 |
(3338) 0x6adb23 VPXOR %XMM3,%XMM3,%XMM3 |
(3338) 0x6adb27 VPGATHERQD (%RCX,%YMM2,8),%XMM3{%K1} |
(3338) 0x6adb2e VMOVDQU %XMM3,-0x7c(%RBP,%R9,4) |
(3338) 0x6adb35 ADD $0x4,%R9 |
(3338) 0x6adb39 CMP %R9,%R11 |
(3338) 0x6adb3c JNE 6adb10 |
(3331) 0x6adb3e CMP %R11,-0x38(%RBP) |
(3331) 0x6adb42 MOV %R15,%R11 |
(3331) 0x6adb45 JNE 6add60 |
(3331) 0x6adb4b JMP 6add80 |
(3331) 0x6adb50 MOV 0x18(%R13),%ECX |
(3331) 0x6adb54 AND %EAX,%ECX |
(3331) 0x6adb56 MOVSXD %ECX,%RCX |
(3331) 0x6adb59 MOV (%R13),%RDX |
(3331) 0x6adb5d MOV %RCX,%RSI |
(3331) 0x6adb60 SAL $0x4,%RSI |
(3331) 0x6adb64 CMP %EAX,(%RDX,%RSI,1) |
(3331) 0x6adb67 JE 6adb84 |
(3331) 0x6adb69 NOPL (%RAX) |
(3339) 0x6adb70 SAL $0x4,%RCX |
(3339) 0x6adb74 MOV 0xc(%RDX,%RCX,1),%ECX |
(3339) 0x6adb78 MOV %RCX,%RSI |
(3339) 0x6adb7b SAL $0x4,%RSI |
(3339) 0x6adb7f CMP %EAX,(%RDX,%RSI,1) |
(3339) 0x6adb82 JNE 6adb70 |
(3331) 0x6adb84 SAL $0x4,%RCX |
(3331) 0x6adb88 LEA (%RDX,%RCX,1),%RAX |
(3331) 0x6adb8c ADD $0x4,%RAX |
(3331) 0x6adb90 MOV (%RAX),%EAX |
(3331) 0x6adb92 MOV %EAX,-0x78(%RBP) |
(3331) 0x6adb95 JMP 6add80 |
(3331) 0x6adb9a MOV %R11,-0xb0(%RBP) |
(3331) 0x6adba1 MOV 0x18(%R13),%R9D |
(3331) 0x6adba5 MOV $0x1,%EDI |
(3331) 0x6adbaa CMP $0x2,%R8D |
(3331) 0x6adbae JNE 6adc05 |
(3331) 0x6adbb0 TESTB $0x1,-0x38(%RBP) |
(3331) 0x6adbb4 MOV -0xb0(%RBP),%R11 |
(3331) 0x6adbbb JE 6add80 |
(3331) 0x6adbc1 ADD (%RAX,%RDI,4),%EDX |
(3331) 0x6adbc4 SUB %ESI,%EDX |
(3331) 0x6adbc6 AND %EDX,%R9D |
(3331) 0x6adbc9 MOVSXD %R9D,%RAX |
(3331) 0x6adbcc MOV %RAX,%RSI |
(3331) 0x6adbcf SAL $0x4,%RSI |
(3331) 0x6adbd3 CMP %EDX,(%RCX,%RSI,1) |
(3331) 0x6adbd6 JE 6adbf4 |
(3331) 0x6adbd8 NOPL (%RAX,%RAX,1) |
(3332) 0x6adbe0 SAL $0x4,%RAX |
(3332) 0x6adbe4 MOV 0xc(%RCX,%RAX,1),%EAX |
(3332) 0x6adbe8 MOV %RAX,%RSI |
(3332) 0x6adbeb SAL $0x4,%RSI |
(3332) 0x6adbef CMP %EDX,(%RCX,%RSI,1) |
(3332) 0x6adbf2 JNE 6adbe0 |
(3331) 0x6adbf4 SAL $0x4,%RAX |
(3331) 0x6adbf8 MOV 0x4(%RCX,%RAX,1),%EAX |
(3331) 0x6adbfc MOV %EAX,-0x80(%RBP,%RDI,4) |
(3331) 0x6adc00 JMP 6add80 |
(3331) 0x6adc05 MOV -0x38(%RBP),%R8 |
(3331) 0x6adc09 AND $-0x2,%R8D |
(3331) 0x6adc0d XOR %R10D,%R10D |
(3331) 0x6adc10 JMP 6adc3f |
0x6adc12 NOPW %CS:(%RAX,%RAX,1) |
(3333) 0x6adc20 SAL $0x4,%R11 |
(3333) 0x6adc24 MOV 0x4(%RCX,%R11,1),%R11D |
(3333) 0x6adc29 MOV %R11D,-0x7c(%RBP,%RDI,4) |
(3333) 0x6adc2e ADD $0x2,%RDI |
(3333) 0x6adc32 ADD $0x2,%R10 |
(3333) 0x6adc36 CMP %R8,%R10 |
(3333) 0x6adc39 JE 6adbb0 |
(3333) 0x6adc3f MOV (%RAX,%RDI,4),%R14D |
(3333) 0x6adc43 ADD %EDX,%R14D |
(3333) 0x6adc46 SUB %ESI,%R14D |
(3333) 0x6adc49 MOV %R9D,%R11D |
(3333) 0x6adc4c AND %R14D,%R11D |
(3333) 0x6adc4f MOVSXD %R11D,%R11 |
(3333) 0x6adc52 MOV %R11,%R15 |
(3333) 0x6adc55 SAL $0x4,%R15 |
(3333) 0x6adc59 CMP %R14D,(%RCX,%R15,1) |
(3333) 0x6adc5d JE 6adc76 |
(3333) 0x6adc5f NOP |
(3335) 0x6adc60 SAL $0x4,%R11 |
(3335) 0x6adc64 MOV 0xc(%RCX,%R11,1),%R11D |
(3335) 0x6adc69 MOV %R11,%R15 |
(3335) 0x6adc6c SAL $0x4,%R15 |
(3335) 0x6adc70 CMP %R14D,(%RCX,%R15,1) |
(3335) 0x6adc74 JNE 6adc60 |
(3333) 0x6adc76 SAL $0x4,%R11 |
(3333) 0x6adc7a MOV 0x4(%RCX,%R11,1),%R11D |
(3333) 0x6adc7f MOV %R11D,-0x80(%RBP,%RDI,4) |
(3333) 0x6adc84 MOV 0x4(%RAX,%RDI,4),%R14D |
(3333) 0x6adc89 ADD %EDX,%R14D |
(3333) 0x6adc8c SUB %ESI,%R14D |
(3333) 0x6adc8f MOV %R9D,%R11D |
(3333) 0x6adc92 AND %R14D,%R11D |
(3333) 0x6adc95 MOVSXD %R11D,%R11 |
(3333) 0x6adc98 MOV %R11,%R15 |
(3333) 0x6adc9b SAL $0x4,%R15 |
(3333) 0x6adc9f CMP %R14D,(%RCX,%R15,1) |
(3333) 0x6adca3 JE 6adc20 |
(3333) 0x6adca9 NOPL (%RAX) |
(3334) 0x6adcb0 SAL $0x4,%R11 |
(3334) 0x6adcb4 MOV 0xc(%RCX,%R11,1),%R11D |
(3334) 0x6adcb9 MOV %R11,%R15 |
(3334) 0x6adcbc SAL $0x4,%R15 |
(3334) 0x6adcc0 CMP %R14D,(%RCX,%R15,1) |
(3334) 0x6adcc4 JNE 6adcb0 |
(3333) 0x6adcc6 JMP 6adc20 |
(3331) 0x6adccb AND $-0x8,%R9D |
(3331) 0x6adccf VPBROADCASTD %EDX,%YMM0 |
(3331) 0x6adcd5 VPBROADCASTD %ESI,%YMM1 |
(3331) 0x6adcdb MOV -0x88(%RBP),%R10 |
(3331) 0x6adce2 LEA (%R10,%RDI,4),%R10 |
(3331) 0x6adce6 XOR %R11D,%R11D |
(3331) 0x6adce9 NOPL (%RAX) |
(3337) 0x6adcf0 VPADDD (%R10,%R11,4),%YMM0,%YMM2 |
(3337) 0x6adcf6 VPSUBD %YMM1,%YMM2,%YMM2 |
(3337) 0x6adcfa VEXTRACTI128 $0x1,%YMM2,%XMM3 |
(3337) 0x6add00 VPMOVSXDQ %XMM3,%YMM3 |
(3337) 0x6add05 VPMOVSXDQ %XMM2,%YMM2 |
(3337) 0x6add0a KXNORW %K0,%K0,%K1 |
(3337) 0x6add0e VPXOR %XMM4,%XMM4,%XMM4 |
(3337) 0x6add12 VPGATHERQD (%RCX,%YMM2,8),%XMM4{%K1} |
(3337) 0x6add19 KXNORW %K0,%K0,%K1 |
(3337) 0x6add1d VPXOR %XMM2,%XMM2,%XMM2 |
(3337) 0x6add21 VPGATHERQD (%RCX,%YMM3,8),%XMM2{%K1} |
(3337) 0x6add28 VMOVDQU %XMM2,-0x6c(%RBP,%R11,4) |
(3337) 0x6add2f VMOVDQU %XMM4,-0x7c(%RBP,%R11,4) |
(3337) 0x6add36 ADD $0x8,%R11 |
(3337) 0x6add3a CMP %R11,%R9 |
(3337) 0x6add3d JNE 6adcf0 |
(3331) 0x6add3f CMP %R9,-0x38(%RBP) |
(3331) 0x6add43 MOV %R15,%R11 |
(3331) 0x6add46 JE 6add80 |
(3331) 0x6add48 TESTB $0x4,-0x38(%RBP) |
(3331) 0x6add4c JNE 6adae0 |
(3331) 0x6add52 OR $0x1,%R9 |
(3331) 0x6add56 MOV %R9,%R10 |
(3331) 0x6add59 NOPL (%RAX) |
(3336) 0x6add60 MOV (%RAX,%R10,4),%EDI |
(3336) 0x6add64 ADD %EDX,%EDI |
(3336) 0x6add66 SUB %ESI,%EDI |
(3336) 0x6add68 MOVSXD %EDI,%RDI |
(3336) 0x6add6b MOV (%RCX,%RDI,8),%EDI |
(3336) 0x6add6e MOV %EDI,-0x80(%RBP,%R10,4) |
(3336) 0x6add73 INC %R10 |
(3336) 0x6add76 CMP %R10,%R8 |
(3336) 0x6add79 JNE 6add60 |
(3331) 0x6add7b NOPL (%RAX,%RAX,1) |
(3331) 0x6add80 MOV -0x38(%RBP),%RDX |
(3331) 0x6add84 MOVSXD %EDX,%RDI |
(3331) 0x6add87 LEA (%R11,%R11,2),%RCX |
(3331) 0x6add8b MOV -0xb8(%RBP),%RSI |
(3331) 0x6add92 LEA (%RSI,%RCX,8),%R13 |
(3331) 0x6add96 MOV (%RSI,%RCX,8),%RAX |
(3331) 0x6add9a MOV 0x8(%RSI,%RCX,8),%RCX |
(3331) 0x6add9f MOV %RCX,%R14 |
(3331) 0x6adda2 SUB %RAX,%R14 |
(3331) 0x6adda5 MOV %R14,%R15 |
(3331) 0x6adda8 SAR $0x2,%R15 |
(3331) 0x6addac ADD %R15,%RDI |
(3331) 0x6addaf INC %RDI |
(3331) 0x6addb2 MOV %RDI,%RSI |
(3331) 0x6addb5 SUB %R15,%RSI |
(3331) 0x6addb8 JBE 6adde0 |
(3331) 0x6addba MOV %R13,%RDI |
(3331) 0x6addbd MOV %R11,%RBX |
(3331) 0x6addc0 VZEROUPPER |
(3331) 0x6addc3 CALL fa6ac0 <@plt_start@+0x3610> |
(3331) 0x6addc8 MOV -0x38(%RBP),%RDX |
(3331) 0x6addcc MOV %RBX,%R11 |
(3331) 0x6addcf MOV (%R13),%RAX |
(3331) 0x6addd3 JMP 6addf0 |
0x6addd5 NOPW %CS:(%RAX,%RAX,1) |
(3331) 0x6adde0 JAE 6addf0 |
(3331) 0x6adde2 LEA (%RAX,%RDI,4),%RSI |
(3331) 0x6adde6 CMP %RSI,%RCX |
(3331) 0x6adde9 JE 6addf0 |
(3331) 0x6addeb MOV %RSI,0x8(%R13) |
(3331) 0x6addef NOP |
(3331) 0x6addf0 MOV -0x48(%RBP),%R13 |
(3331) 0x6addf4 MOV -0x2c(%RBP),%EBX |
(3331) 0x6addf7 MOV -0x30(%RBP),%ECX |
(3331) 0x6addfa MOV %ECX,(%RAX,%R15,4) |
(3331) 0x6addfe TEST %EDX,%EDX |
(3331) 0x6ade00 JLE 6ade20 |
(3331) 0x6ade02 LEA (%RAX,%R14,1),%RDI |
(3331) 0x6ade06 ADD $0x4,%RDI |
(3331) 0x6ade0a SAL $0x2,%RDX |
(3331) 0x6ade0e LEA -0x7c(%RBP),%RSI |
(3331) 0x6ade12 MOV %R11,%R14 |
(3331) 0x6ade15 VZEROUPPER |
(3331) 0x6ade18 CALL fa35b0 <@plt_start@+0x100> |
(3331) 0x6ade1d MOV %R14,%R11 |
(3331) 0x6ade20 CMPB $0,-0x64(%RBP) |
(3331) 0x6ade24 MOV 0x95159d(%RIP),%R15 |
(3331) 0x6ade2b JNE 6ade41 |
(3331) 0x6ade2d MOV -0xa8(%RBP),%RAX |
(3331) 0x6ade34 ADD %R15,%RAX |
(3331) 0x6ade37 ADD $0x1c,%RAX |
(3331) 0x6ade3b TESTB $0x2,0x1(%RAX) |
(3331) 0x6ade3f JNE 6ade4b |
(3331) 0x6ade41 MOV -0x58(%RBP),%RAX |
(3331) 0x6ade45 INC %EAX |
(3331) 0x6ade47 MOV %RAX,-0x58(%RBP) |
(3331) 0x6ade4b MOV -0xa0(%RBP),%R14 |
(3331) 0x6ade52 JMP 6ad96a |
0x6ade57 MOV -0x58(%RBP),%RAX |
0x6ade5b ADD $0xb8,%RSP |
0x6ade62 POP %RBX |
0x6ade63 POP %R12 |
0x6ade65 POP %R13 |
0x6ade67 POP %R14 |
0x6ade69 POP %R15 |
0x6ade6b POP %RBP |
0x6ade6c RET |
0x6ade6d NOPL (%RAX) |
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 | localtopology.cpp:408-580 |
Module | libgromacs_mpi.so.9.0.0 |
nb instructions | 55 |
nb uops | 51 |
loop length | 226 |
used x86 registers | 14 |
used mmx registers | 0 |
used xmm registers | 0 |
used ymm registers | 0 |
used zmm registers | 0 |
nb stack references | 12 |
micro-operation queue | 8.50 cycles |
front end | 8.50 cycles |
ALU0/BRU0 | ALU1 | ALU2 | ALU3 | BRU1 | AGU0 | AGU1 | AGU2 | FP0 | FP1 | FP2 | FP3 | FP4 | FP5 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
uops | 2.25 | 2.25 | 2.25 | 2.25 | 2.00 | 8.33 | 8.33 | 8.33 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 |
cycles | 2.25 | 2.25 | 2.25 | 2.25 | 2.00 | 8.33 | 8.33 | 8.33 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 |
Cycles executing div or sqrt instructions | NA |
Front-end | 8.50 |
Dispatch | 8.33 |
Overall L1 | 8.50 |
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 | 10% |
load | 8% |
store | 11% |
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 | 10% |
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 $0xb8,%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 %R9D,-0x64(%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 %R8D,-0x3c(%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,-0x98(%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 %RSI,-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 (%RSI),%RAX | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | 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%) |
MOVSXD 0x8(%RDI),%RCX | 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 (%RAX,%RCX,4),%R12D | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | scal (6.3%) |
MOV 0x4(%RAX,%RCX,4),%EBX | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | scal (6.3%) |
XOR %EAX,%EAX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.25 | N/A |
MOV %RAX,-0x58(%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%) |
CMP %EBX,%R12D | 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%) |
JGE 6ade57 <_ZL25assignInteractionsForAtomILb1EEiRK12AtomIndexSetRK15reverse_ilist_tRK11gmx_ga2la_tRK18gmx_domdec_zones_tbPKibfPK5t_pbcN3gmx8ArrayRefIKNSH_11BasicVectorIfEEEEP22InteractionDefinitionsiNSH_16DDBondedCheckingE+0x5a7> | 1 | 0.50 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50-1 | N/A |
MOV %RDX,%R13 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 | scal (12.5%) |
MOV -0x60(%RBP),%RAX | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
MOV 0x18(%RAX),%R14 | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
MOV %R14,-0x90(%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%) |
TEST %R14,%R14 | 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%) |
JE 6ad91f <_ZL25assignInteractionsForAtomILb1EEiRK12AtomIndexSetRK15reverse_ilist_tRK11gmx_ga2la_tRK18gmx_domdec_zones_tbPKibfPK5t_pbcN3gmx8ArrayRefIKNSH_11BasicVectorIfEEEEP22InteractionDefinitionsiNSH_16DDBondedCheckingE+0x6f> | 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(%RBP),%RAX | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
MOV 0x20(%RAX),%RAX | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
MOV %RAX,-0x90(%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 -0x98(%RBP),%RAX | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
ADD $0x40,%RAX | 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 %RAX,-0xb8(%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%) |
LEA 0x4(%R14),%RAX | 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 %RAX,-0x88(%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%) |
XOR %EAX,%EAX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.25 | N/A |
MOV %RAX,-0x58(%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 0x951a7f(%RIP),%R15 | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | scal (12.5%) |
MOV %R14,-0xa0(%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 %EBX,-0x2c(%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 %R13,-0x48(%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 6ad985 <_ZL25assignInteractionsForAtomILb1EEiRK12AtomIndexSetRK15reverse_ilist_tRK11gmx_ga2la_tRK18gmx_domdec_zones_tbPKibfPK5t_pbcN3gmx8ArrayRefIKNSH_11BasicVectorIfEEEEP22InteractionDefinitionsiNSH_16DDBondedCheckingE+0xd5> | 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 |
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 |
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 |
MOV -0x58(%RBP),%RAX | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
ADD $0xb8,%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) | 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 | localtopology.cpp:408-580 |
Module | libgromacs_mpi.so.9.0.0 |
nb instructions | 55 |
nb uops | 51 |
loop length | 226 |
used x86 registers | 14 |
used mmx registers | 0 |
used xmm registers | 0 |
used ymm registers | 0 |
used zmm registers | 0 |
nb stack references | 12 |
micro-operation queue | 8.50 cycles |
front end | 8.50 cycles |
ALU0/BRU0 | ALU1 | ALU2 | ALU3 | BRU1 | AGU0 | AGU1 | AGU2 | FP0 | FP1 | FP2 | FP3 | FP4 | FP5 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
uops | 2.25 | 2.25 | 2.25 | 2.25 | 2.00 | 8.33 | 8.33 | 8.33 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 |
cycles | 2.25 | 2.25 | 2.25 | 2.25 | 2.00 | 8.33 | 8.33 | 8.33 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 |
Cycles executing div or sqrt instructions | NA |
Front-end | 8.50 |
Dispatch | 8.33 |
Overall L1 | 8.50 |
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 | 10% |
load | 8% |
store | 11% |
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 | 10% |
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 $0xb8,%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 %R9D,-0x64(%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 %R8D,-0x3c(%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,-0x98(%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 %RSI,-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 (%RSI),%RAX | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | 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%) |
MOVSXD 0x8(%RDI),%RCX | 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 (%RAX,%RCX,4),%R12D | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | scal (6.3%) |
MOV 0x4(%RAX,%RCX,4),%EBX | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | scal (6.3%) |
XOR %EAX,%EAX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.25 | N/A |
MOV %RAX,-0x58(%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%) |
CMP %EBX,%R12D | 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%) |
JGE 6ade57 <_ZL25assignInteractionsForAtomILb1EEiRK12AtomIndexSetRK15reverse_ilist_tRK11gmx_ga2la_tRK18gmx_domdec_zones_tbPKibfPK5t_pbcN3gmx8ArrayRefIKNSH_11BasicVectorIfEEEEP22InteractionDefinitionsiNSH_16DDBondedCheckingE+0x5a7> | 1 | 0.50 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50-1 | N/A |
MOV %RDX,%R13 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 | scal (12.5%) |
MOV -0x60(%RBP),%RAX | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
MOV 0x18(%RAX),%R14 | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
MOV %R14,-0x90(%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%) |
TEST %R14,%R14 | 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%) |
JE 6ad91f <_ZL25assignInteractionsForAtomILb1EEiRK12AtomIndexSetRK15reverse_ilist_tRK11gmx_ga2la_tRK18gmx_domdec_zones_tbPKibfPK5t_pbcN3gmx8ArrayRefIKNSH_11BasicVectorIfEEEEP22InteractionDefinitionsiNSH_16DDBondedCheckingE+0x6f> | 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(%RBP),%RAX | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
MOV 0x20(%RAX),%RAX | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
MOV %RAX,-0x90(%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 -0x98(%RBP),%RAX | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
ADD $0x40,%RAX | 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 %RAX,-0xb8(%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%) |
LEA 0x4(%R14),%RAX | 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 %RAX,-0x88(%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%) |
XOR %EAX,%EAX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.25 | N/A |
MOV %RAX,-0x58(%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 0x951a7f(%RIP),%R15 | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | scal (12.5%) |
MOV %R14,-0xa0(%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 %EBX,-0x2c(%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 %R13,-0x48(%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 6ad985 <_ZL25assignInteractionsForAtomILb1EEiRK12AtomIndexSetRK15reverse_ilist_tRK11gmx_ga2la_tRK18gmx_domdec_zones_tbPKibfPK5t_pbcN3gmx8ArrayRefIKNSH_11BasicVectorIfEEEEP22InteractionDefinitionsiNSH_16DDBondedCheckingE+0xd5> | 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 |
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 |
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 |
MOV -0x58(%RBP),%RAX | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
ADD $0xb8,%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) | 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 |
Run | Number of threads | Efficiency (ideal is 1) | Speedup | Ideal Speedup | Time (s) | Coverage (%) |
---|---|---|---|---|---|---|
1x1 | 1 | 1 | 1 | 1 | 0.41500002145767 | 0.049783799797297 |
2x1 | ||||||
4x1 | ||||||
8x1 | ||||||
16x1 | ||||||
32x1 | ||||||
64x1 | ||||||
128x1 | ||||||
192x1 |
Name | Coverage (%) | Time (s) |
---|---|---|
▼int assignInteractionsForAtom | 0.00 | 0.00 |
▼Loop 3331 - localtopology.cpp:417-577 - libgromacs_mpi.so.9.0.0– | 0.00 | 0.00 |
○Loop 3339 - hashedmap.h:277-281 - libgromacs_mpi.so.9.0.0 | 0.00 | 0.00 |
○Loop 3336 - localtopology.cpp:506-514 - libgromacs_mpi.so.9.0.0 | 0.00 | 0.00 |
○Loop 3338 - localtopology.cpp:509-514 - libgromacs_mpi.so.9.0.0 | 0.00 | 0.00 |
▼Loop 3333 - hashedmap.h:274-281 - libgromacs_mpi.so.9.0.0– | 0.00 | 0.00 |
○Loop 3335 - hashedmap.h:277-281 - libgromacs_mpi.so.9.0.0 | 0.00 | 0.00 |
○Loop 3334 - hashedmap.h:277-281 - libgromacs_mpi.so.9.0.0 | 0.00 | 0.00 |
○Loop 3337 - localtopology.cpp:509-514 - libgromacs_mpi.so.9.0.0 | 0.00 | 0.00 |
○Loop 3332 - hashedmap.h:277-281 - libgromacs_mpi.so.9.0.0 | 0.00 | 0.00 |