| Function: qmcplusplus::SoaDistanceTableAAOMPTarget<double, 3u, 40>::update(int) | Module: exec | Source: SoaDistanceTableAAOMPTarget.h:429-445 [...] | Coverage (incl. loops): 9.11% | (excl. loops): 0.00% |
|---|
| Function: qmcplusplus::SoaDistanceTableAAOMPTarget<double, 3u, 40>::update(int) | Module: exec | Source: SoaDistanceTableAAOMPTarget.h:429-445 [...] | Coverage (incl. loops): 9.11% | (excl. loops): 0.00% |
|---|
/home/hbollore/qaas/qaas-runs/174-135-6342/intel/miniqmc/build/miniqmc/src/Utilities/NewTimer.h: 242 - 249 |
-------------------------------------------------------------------------------- |
242: ScopeGuard(TIMER& t) : timer(t) { timer.start(); } |
[...] |
249: ~ScopeGuard() { timer.stop(); } |
/opt/arm/gcc-14.2.0_AmazonLinux-2023/include/c++/14.2.0/bits/stl_vector.h: 1131 - 1131 |
-------------------------------------------------------------------------------- |
1131: return *(this->_M_impl._M_start + __n); |
/opt/arm/gcc-14.2.0_AmazonLinux-2023/include/c++/14.2.0/bits/stl_algo.h: 683 - 709 |
-------------------------------------------------------------------------------- |
683: { return std::copy(__first, __first + __n, __result); } |
[...] |
709: if (__n2 <= 0) |
/home/hbollore/qaas/qaas-runs/174-135-6342/intel/miniqmc/build/miniqmc/src/Numerics/OhmmsPETE/OhmmsVector.h: 223 - 248 |
-------------------------------------------------------------------------------- |
223: return X[i]; |
[...] |
248: inline pointer data() { return X; } |
/opt/arm/gcc-14.2.0_AmazonLinux-2023/include/c++/14.2.0/bits/stl_algobase.h: 413 - 452 |
-------------------------------------------------------------------------------- |
413: { *__to = *__from; } |
[...] |
451: if (__builtin_expect(_Num > 1, true)) |
452: __builtin_memmove(__result, __first, sizeof(_Tp) * _Num); |
/home/hbollore/qaas/qaas-runs/174-135-6342/intel/miniqmc/build/miniqmc/src/Numerics/OhmmsPETE/VectorSoAContainer.h: 231 - 271 |
-------------------------------------------------------------------------------- |
231: inline const AoSElement_t operator[](size_t i) const { return AoSElement_t(myData + i, nGhosts); } |
[...] |
244: *(_base + M * i) = rhs[i]; |
[...] |
263: inline Accessor operator()(size_t i) { return Accessor(myData + i, nGhosts); } |
[...] |
271: inline T* restrict data(size_t i) { return myData + i * nGhosts; } |
/home/hbollore/qaas/qaas-runs/174-135-6342/intel/miniqmc/build/miniqmc/src/Particle/SoaDistanceTableAAOMPTarget.h: 429 - 445 |
-------------------------------------------------------------------------------- |
429: inline void update(IndexType iat) override |
430: { |
431: ScopedTimer local_timer(update_timer_); |
[...] |
437: for (int idim = 0; idim < D; ++idim) |
438: std::copy_n(temp_dr_.data(idim), nupdate, displacements_[iat].data(idim)); |
439: //copy column |
440: for (size_t i = iat + 1; i < num_targets_; ++i) |
441: { |
442: distances_[i][iat] = temp_r_[i]; |
443: displacements_[i](iat) = -temp_dr_[i]; |
444: } |
445: } |
/home/hbollore/qaas/qaas-runs/174-135-6342/intel/miniqmc/build/miniqmc/src/Numerics/OhmmsPETE/TinyVector.h: 182 - 182 |
-------------------------------------------------------------------------------- |
182: inverse[d] = -X[d]; |
0x5000a0 STP X29, X30, [SP, #944]! |
0x5000a4 ADD X29, SP, #0 |
0x5000a8 STP X19, X20, [SP, #16] |
0x5000ac ORR W19, WZR, W1 |
0x5000b0 SBFM X20, X1, #61, #31 |
0x5000b4 STP X21, X22, [SP, #32] |
0x5000b8 STP X23, X24, [SP, #48] |
0x5000bc ORR X23, XZR, X0 |
0x5000c0 STP X25, X26, [SP, #64] |
0x5000c4 MOVZ W25, #40 |
0x5000c8 SMADDL X25, W1, W25, XZR |
0x5000cc LDR X21, [X0, #648] |
0x5000d0 ORR X0, XZR, X21 |
0x5000d4 BL 4d5540 |
0x5000d8 CMP W19, #0 |
0x5000dc B.LE 500148 |
0x5000e0 LDR X0, [X23, #72] |
0x5000e4 LDR X1, [X23, #144] |
0x5000e8 ADD X2, X0, X25 |
0x5000ec LDR X0, [X2, #24] |
0x5000f0 CMP X20, #8 |
0x5000f4 B.EQ 500298 |
0x5000f8 ORR X2, XZR, X20 |
0x5000fc ADD X24, X23, #160 |
0x500100 ADD X26, X23, #96 |
0x500104 MOVZ X22, #0 |
0x500108 BL 403d70 |
(3293) 0x50010c LDR X15, [X26] |
(3293) 0x500110 ORR X2, XZR, X20 |
(3293) 0x500114 LDR X12, [X24, #8] |
(3293) 0x500118 LDR X13, [X24, #24] |
(3293) 0x50011c ADD X16, X15, X25 |
(3293) 0x500120 LDR X17, [X16, #8] |
(3293) 0x500124 MADD X14, X22, X12, XZR |
(3293) 0x500128 LDR X18, [X16, #24] |
(3293) 0x50012c ADD X1, X13, X14,LSL #3 |
(3293) 0x500130 MADD X30, X22, X17, XZR |
(3293) 0x500134 ADD X22, X22, #1 |
(3293) 0x500138 ADD X0, X18, X30,LSL #3 |
(3293) 0x50013c BL 403d70 |
(3293) 0x500140 CMP X22, #3 |
(3293) 0x500144 B.NE 50010c |
(3291) 0x500148 LDR X24, [X23, #24] |
(3291) 0x50014c ADD W19, W19, #1 |
(3291) 0x500150 SBFM X1, X19, #0, #31 |
(3291) 0x500154 CMP X1, X24 |
(3291) 0x500158 B.CS 500278 |
(3291) 0x50015c LDR X26, [X23, #72] |
(3291) 0x500160 SUB X0, X24, X1 |
(3291) 0x500164 ADD X9, X25, #64 |
(3291) 0x500168 LDR X11, [X23, #96] |
(3291) 0x50016c LDR X14, [X23, #144] |
(3291) 0x500170 LDRSW X2, [X23, #168] |
(3291) 0x500174 SUB X10, X11, #16 |
(3291) 0x500178 LDR X23, [X23, #184] |
(3291) 0x50017c ADD X12, X23, X2,LSL #3 |
(3291) 0x500180 ADD X6, X23, X2,LSL #4 |
(3291) 0x500184 TBZ W0, #0, 5001e0 |
(3291) 0x500188 LDR D3, [X14, X1,LSL #3] |
(3291) 0x50018c LDR X5, [X26, X9] |
(3291) 0x500190 LDR X4, [X10, X9] |
(3291) 0x500194 LDR X7, [X11, X9] |
(3291) 0x500198 ADD X9, X25, #104 |
(3291) 0x50019c STR D3, [X5, X20] |
(3291) 0x5001a0 LDR D29, [X23, X1,LSL #3] |
(3291) 0x5001a4 ADD X25, X20, X4,LSL #3 |
(3291) 0x5001a8 LDR D4, [X12, X1,LSL #3] |
(3291) 0x5001ac ADD X3, X7, X4,LSL #3 |
(3291) 0x5001b0 LDR D30, [X6, X1,LSL #3] |
(3291) 0x5001b4 ADD X1, X1, #1 |
(3291) 0x5001b8 FNEG D5, D29 |
(3291) 0x5001bc FNEG D6, D4 |
(3291) 0x5001c0 FNEG D7, D30 |
(3291) 0x5001c4 STR D5, [X7, X20] |
(3291) 0x5001c8 STR D6, [X7, X25] |
(3291) 0x5001cc STR D7, [X3, X25] |
(3291) 0x5001d0 CMP X1, X24 |
(3291) 0x5001d4 B.EQ 500278 |
(3291) 0x5001d8 HINT #0 |
(3291) 0x5001dc HINT #0 |
(3292) 0x5001e0 LDR D16, [X14, X1,LSL #3] |
(3292) 0x5001e4 ADD X15, X9, #40 |
(3292) 0x5001e8 ADD X13, X1, #1 |
(3292) 0x5001ec LDR X8, [X26, X9] |
(3292) 0x5001f0 LDR X16, [X10, X9] |
(3292) 0x5001f4 LDR X17, [X11, X9] |
(3292) 0x5001f8 ADD X9, X9, #80 |
(3292) 0x5001fc STR D16, [X8, X20] |
(3292) 0x500200 LDR D23, [X23, X1,LSL #3] |
(3292) 0x500204 ADD X18, X20, X16,LSL #3 |
(3292) 0x500208 LDR D25, [X12, X1,LSL #3] |
(3292) 0x50020c ADD X30, X17, X16,LSL #3 |
(3292) 0x500210 LDR D24, [X6, X1,LSL #3] |
(3292) 0x500214 ADD X1, X1, #2 |
(3292) 0x500218 FNEG D17, D23 |
(3292) 0x50021c LDR X19, [X10, X15] |
(3292) 0x500220 FNEG D18, D25 |
(3292) 0x500224 LDR X22, [X26, X15] |
(3292) 0x500228 FNEG D19, D24 |
(3292) 0x50022c STR D17, [X17, X20] |
(3292) 0x500230 LDR X0, [X11, X15] |
(3292) 0x500234 ADD X2, X20, X19,LSL #3 |
(3292) 0x500238 STR D18, [X17, X18] |
(3292) 0x50023c STR D19, [X30, X18] |
(3292) 0x500240 LDR D20, [X14, X13,LSL #3] |
(3292) 0x500244 ADD X5, X0, X19,LSL #3 |
(3292) 0x500248 STR D20, [X22, X20] |
(3292) 0x50024c LDR D26, [X23, X13,LSL #3] |
(3292) 0x500250 LDR D28, [X12, X13,LSL #3] |
(3292) 0x500254 LDR D27, [X6, X13,LSL #3] |
(3292) 0x500258 FNEG D21, D26 |
(3292) 0x50025c FNEG D22, D28 |
(3292) 0x500260 FNEG D31, D27 |
(3292) 0x500264 STR D21, [X0, X20] |
(3292) 0x500268 STR D22, [X0, X2] |
(3292) 0x50026c STR D31, [X5, X2] |
(3292) 0x500270 CMP X1, X24 |
(3292) 0x500274 B.NE 5001e0 |
(3291) 0x500278 ORR X0, XZR, X21 |
(3291) 0x50027c BL 4d57e0 |
(3291) 0x500280 LDP X19, X20, [SP, #16] |
(3291) 0x500284 LDP X21, X22, [SP, #32] |
(3291) 0x500288 LDP X23, X24, [SP, #48] |
(3291) 0x50028c LDP X25, X26, [SP, #64] |
(3291) 0x500290 LDP X29, X30, [SP], #80 |
(3291) 0x500294 RET |
(3291) 0x500298 LDR D31, [X1] |
(3291) 0x50029c LDR X5, [X23, #96] |
(3291) 0x5002a0 LDR X3, [X23, #184] |
(3291) 0x5002a4 LDR X1, [X23, #168] |
(3291) 0x5002a8 ADD X7, X5, X25 |
(3291) 0x5002ac STR D31, [X0] |
(3291) 0x5002b0 LDR X8, [X7, #24] |
(3291) 0x5002b4 LDR D0, [X3] |
(3291) 0x5002b8 UBFM X4, X1, #61, #60 |
(3291) 0x5002bc ADD X6, X3, X1,LSL #3 |
(3291) 0x5002c0 LDR X9, [X7, #8] |
(3291) 0x5002c4 STR D0, [X8] |
(3291) 0x5002c8 LDR D1, [X3, X4] |
(3291) 0x5002cc UBFM X10, X9, #61, #60 |
(3291) 0x5002d0 ADD X11, X8, X9,LSL #3 |
(3291) 0x5002d4 STR D1, [X8, X10] |
(3291) 0x5002d8 LDR D2, [X6, X4] |
(3291) 0x5002dc STR D2, [X11, X10] |
(3291) 0x5002e0 B 500148 |
0x5002e4 HINT #0 |
0x5002e8 HINT #0 |
0x5002ec HINT #0 |
0x5002f0 HINT #0 |
0x5002f4 HINT #0 |
0x5002f8 HINT #0 |
0x5002fc HINT #0 |
| Coverage (%) | Name | Source Location | Module |
|---|---|---|---|
| ►98.94+ | qmcplusplus::ParticleSet::acce[...] | ParticleSet.cpp:389 | exec |
| ○ | main._omp_fn.1 | miniqmc.cpp:453 | exec |
| ○ | gomp_thread_start | team.c:130 | libgomp.so.1.0.0 |
| ○ | start_thread | libc.so.6 | |
| ○ | thread_start | libc.so.6 |
| min | med | avg | max |
|---|---|---|---|
| Percentile Index | 10 | 20 | 30 | 40 | 50 | 60 | 70 | 80 | 90 | 100 |
|---|---|---|---|---|---|---|---|---|---|---|
| Value |
| min | med | avg | max |
|---|---|---|---|
| Percentile Index | 10 | 20 | 30 | 40 | 50 | 60 | 70 | 80 | 90 | 100 |
|---|---|---|---|---|---|---|---|---|---|---|
| Value |
| Path / |
The code analyzed by CQA in that panel excludes loops and represents 0.00% of application time for run gcc_0
| Source file and lines | SoaDistanceTableAAOMPTarget.h:429-445 |
| Module | exec |
| nb instructions | 34 |
| loop length | 136 |
| nb stack references | 0 |
| front end | 3.38 cycles |
| P0 | P1 | P2 | P3 | P4 | P5 | P6 | P7 | P8 | P9 | P10 | P11 | P12 | P13 | P14 | P15 | P16 | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| uops | 2.00 | 2.00 | 2.92 | 2.92 | 2.83 | 2.83 | 2.75 | 2.75 | 0.00 | 0.00 | 0.00 | 0.00 | 3.17 | 2.83 | 3.00 | 2.50 | 2.50 |
| cycles | 2.00 | 2.00 | 2.92 | 2.92 | 2.83 | 2.83 | 2.75 | 2.75 | 0.00 | 0.00 | 0.00 | 0.00 | 3.17 | 2.83 | 3.00 | 2.50 | 2.50 |
| Cycles executing div or sqrt instructions | NA |
| Front-end | 3.38 |
| Overall L1 | 3.38 |
| all | 0% |
| load | 0% |
| store | 0% |
| mul | NA (no mul vectorizable/vectorized instructions) |
| add-sub | 0% |
| fma | 0% |
| div/sqrt | NA (no div/sqrt vectorizable/vectorized instructions) |
| other | 0% |
| Instruction | Nb FU | P0 | P1 | P2 | P3 | P4 | P5 | P6 | P7 | P8 | P9 | P10 | P11 | P12 | P13 | P14 | P15 | P16 | Latency | Recip. throughput | Vectorization |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| STP X29, X30, [SP, #944]! | 1 | 0 | 0 | 0.17 | 0.17 | 0.17 | 0.17 | 0.17 | 0.17 | 0 | 0 | 0 | 0 | 0.50 | 0.50 | 0 | 0.50 | 0.50 | 1 | 0.50 | scal (100.0%) |
| ADD X29, SP, #0 | 1 | 0 | 0 | 0.17 | 0.17 | 0.17 | 0.17 | 0.17 | 0.17 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 | scal (50.0%) |
| STP X19, X20, [SP, #16] | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.50 | 0.50 | 0 | 0.50 | 0.50 | 1 | 0.50 | scal (100.0%) |
| ORR W19, WZR, W1 | 1 | 0 | 0 | 0.17 | 0.17 | 0.17 | 0.17 | 0.17 | 0.17 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 | scal (25.0%) |
| SBFM X20, X1, #61, #31 | 1 | 0 | 0 | 0.17 | 0.17 | 0.17 | 0.17 | 0.17 | 0.17 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 | scal (100.0%) |
| STP X21, X22, [SP, #32] | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.50 | 0.50 | 0 | 0.50 | 0.50 | 1 | 0.50 | scal (100.0%) |
| STP X23, X24, [SP, #48] | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.50 | 0.50 | 0 | 0.50 | 0.50 | 1 | 0.50 | scal (100.0%) |
| ORR X23, XZR, X0 | 1 | 0 | 0 | 0.17 | 0.17 | 0.17 | 0.17 | 0.17 | 0.17 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 | N/A |
| STP X25, X26, [SP, #64] | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.50 | 0.50 | 0 | 0.50 | 0.50 | 1 | 0.50 | scal (100.0%) |
| MOVZ W25, #40 | 1 | 0 | 0 | 0.17 | 0.17 | 0.17 | 0.17 | 0.17 | 0.17 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 | scal (25.0%) |
| SMADDL X25, W1, W25, XZR | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 1 | scal (25.0%) |
| LDR X21, [X0, #648] | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 4 | 0.33 | scal (50.0%) |
| ORR X0, XZR, X21 | 1 | 0 | 0 | 0.17 | 0.17 | 0.17 | 0.17 | 0.17 | 0.17 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 | N/A |
| BL 4d5540 <_ZN11qmcplusplus9TimerTypeINSt6chrono3_V212system_clockEE5startEv> | 1 | 0.50 | 0.50 | 0.50 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50 | N/A |
| CMP W19, #0 | 1 | 0 | 0 | 0.25 | 0.25 | 0 | 0 | 0.25 | 0.25 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.33 | scal (25.0%) |
| B.LE 500148 <_ZN11qmcplusplus27SoaDistanceTableAAOMPTargetIdLj3ELi40EE6updateEi+0xa8> | 1 | 0.50 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50 | N/A |
| LDR X0, [X23, #72] | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 4 | 0.33 | N/A |
| LDR X1, [X23, #144] | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 4 | 0.33 | scal (50.0%) |
| ADD X2, X0, X25 | 1 | 0 | 0 | 0.17 | 0.17 | 0.17 | 0.17 | 0.17 | 0.17 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 | N/A |
| LDR X0, [X2, #24] | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 4 | 0.33 | N/A |
| CMP X20, #8 | 1 | 0 | 0 | 0.25 | 0.25 | 0 | 0 | 0.25 | 0.25 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.33 | scal (50.0%) |
| B.EQ 500298 <_ZN11qmcplusplus27SoaDistanceTableAAOMPTargetIdLj3ELi40EE6updateEi+0x1f8> | 1 | 0.50 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50 | N/A |
| ORR X2, XZR, X20 | 1 | 0 | 0 | 0.17 | 0.17 | 0.17 | 0.17 | 0.17 | 0.17 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 | N/A |
| ADD X24, X23, #160 | 1 | 0 | 0 | 0.17 | 0.17 | 0.17 | 0.17 | 0.17 | 0.17 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 | scal (50.0%) |
| ADD X26, X23, #96 | 1 | 0 | 0 | 0.17 | 0.17 | 0.17 | 0.17 | 0.17 | 0.17 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 | N/A |
| MOVZ X22, #0 | 1 | 0 | 0 | 0.17 | 0.17 | 0.17 | 0.17 | 0.17 | 0.17 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 | scal (50.0%) |
| BL 403d70 <@plt_start@+0x80> | 1 | 0.50 | 0.50 | 0.50 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50 | N/A |
| HINT #0 | N/A | ||||||||||||||||||||
| HINT #0 | N/A | ||||||||||||||||||||
| HINT #0 | N/A | ||||||||||||||||||||
| HINT #0 | N/A | ||||||||||||||||||||
| HINT #0 | N/A | ||||||||||||||||||||
| HINT #0 | N/A | ||||||||||||||||||||
| HINT #0 | N/A |
The code analyzed by CQA in that panel excludes loops and represents 0.00% of application time for run gcc_0
| Source file and lines | SoaDistanceTableAAOMPTarget.h:429-445 |
| Module | exec |
| nb instructions | 34 |
| loop length | 136 |
| nb stack references | 0 |
| front end | 3.38 cycles |
| P0 | P1 | P2 | P3 | P4 | P5 | P6 | P7 | P8 | P9 | P10 | P11 | P12 | P13 | P14 | P15 | P16 | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| uops | 2.00 | 2.00 | 2.92 | 2.92 | 2.83 | 2.83 | 2.75 | 2.75 | 0.00 | 0.00 | 0.00 | 0.00 | 3.17 | 2.83 | 3.00 | 2.50 | 2.50 |
| cycles | 2.00 | 2.00 | 2.92 | 2.92 | 2.83 | 2.83 | 2.75 | 2.75 | 0.00 | 0.00 | 0.00 | 0.00 | 3.17 | 2.83 | 3.00 | 2.50 | 2.50 |
| Cycles executing div or sqrt instructions | NA |
| Front-end | 3.38 |
| Overall L1 | 3.38 |
| all | 0% |
| load | 0% |
| store | 0% |
| mul | NA (no mul vectorizable/vectorized instructions) |
| add-sub | 0% |
| fma | 0% |
| div/sqrt | NA (no div/sqrt vectorizable/vectorized instructions) |
| other | 0% |
| Instruction | Nb FU | P0 | P1 | P2 | P3 | P4 | P5 | P6 | P7 | P8 | P9 | P10 | P11 | P12 | P13 | P14 | P15 | P16 | Latency | Recip. throughput | Vectorization |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| STP X29, X30, [SP, #944]! | 1 | 0 | 0 | 0.17 | 0.17 | 0.17 | 0.17 | 0.17 | 0.17 | 0 | 0 | 0 | 0 | 0.50 | 0.50 | 0 | 0.50 | 0.50 | 1 | 0.50 | scal (100.0%) |
| ADD X29, SP, #0 | 1 | 0 | 0 | 0.17 | 0.17 | 0.17 | 0.17 | 0.17 | 0.17 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 | scal (50.0%) |
| STP X19, X20, [SP, #16] | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.50 | 0.50 | 0 | 0.50 | 0.50 | 1 | 0.50 | scal (100.0%) |
| ORR W19, WZR, W1 | 1 | 0 | 0 | 0.17 | 0.17 | 0.17 | 0.17 | 0.17 | 0.17 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 | scal (25.0%) |
| SBFM X20, X1, #61, #31 | 1 | 0 | 0 | 0.17 | 0.17 | 0.17 | 0.17 | 0.17 | 0.17 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 | scal (100.0%) |
| STP X21, X22, [SP, #32] | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.50 | 0.50 | 0 | 0.50 | 0.50 | 1 | 0.50 | scal (100.0%) |
| STP X23, X24, [SP, #48] | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.50 | 0.50 | 0 | 0.50 | 0.50 | 1 | 0.50 | scal (100.0%) |
| ORR X23, XZR, X0 | 1 | 0 | 0 | 0.17 | 0.17 | 0.17 | 0.17 | 0.17 | 0.17 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 | N/A |
| STP X25, X26, [SP, #64] | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.50 | 0.50 | 0 | 0.50 | 0.50 | 1 | 0.50 | scal (100.0%) |
| MOVZ W25, #40 | 1 | 0 | 0 | 0.17 | 0.17 | 0.17 | 0.17 | 0.17 | 0.17 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 | scal (25.0%) |
| SMADDL X25, W1, W25, XZR | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 1 | scal (25.0%) |
| LDR X21, [X0, #648] | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 4 | 0.33 | scal (50.0%) |
| ORR X0, XZR, X21 | 1 | 0 | 0 | 0.17 | 0.17 | 0.17 | 0.17 | 0.17 | 0.17 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 | N/A |
| BL 4d5540 <_ZN11qmcplusplus9TimerTypeINSt6chrono3_V212system_clockEE5startEv> | 1 | 0.50 | 0.50 | 0.50 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50 | N/A |
| CMP W19, #0 | 1 | 0 | 0 | 0.25 | 0.25 | 0 | 0 | 0.25 | 0.25 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.33 | scal (25.0%) |
| B.LE 500148 <_ZN11qmcplusplus27SoaDistanceTableAAOMPTargetIdLj3ELi40EE6updateEi+0xa8> | 1 | 0.50 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50 | N/A |
| LDR X0, [X23, #72] | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 4 | 0.33 | N/A |
| LDR X1, [X23, #144] | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 4 | 0.33 | scal (50.0%) |
| ADD X2, X0, X25 | 1 | 0 | 0 | 0.17 | 0.17 | 0.17 | 0.17 | 0.17 | 0.17 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 | N/A |
| LDR X0, [X2, #24] | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 4 | 0.33 | N/A |
| CMP X20, #8 | 1 | 0 | 0 | 0.25 | 0.25 | 0 | 0 | 0.25 | 0.25 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.33 | scal (50.0%) |
| B.EQ 500298 <_ZN11qmcplusplus27SoaDistanceTableAAOMPTargetIdLj3ELi40EE6updateEi+0x1f8> | 1 | 0.50 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50 | N/A |
| ORR X2, XZR, X20 | 1 | 0 | 0 | 0.17 | 0.17 | 0.17 | 0.17 | 0.17 | 0.17 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 | N/A |
| ADD X24, X23, #160 | 1 | 0 | 0 | 0.17 | 0.17 | 0.17 | 0.17 | 0.17 | 0.17 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 | scal (50.0%) |
| ADD X26, X23, #96 | 1 | 0 | 0 | 0.17 | 0.17 | 0.17 | 0.17 | 0.17 | 0.17 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 | N/A |
| MOVZ X22, #0 | 1 | 0 | 0 | 0.17 | 0.17 | 0.17 | 0.17 | 0.17 | 0.17 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 | scal (50.0%) |
| BL 403d70 <@plt_start@+0x80> | 1 | 0.50 | 0.50 | 0.50 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50 | N/A |
| HINT #0 | N/A | ||||||||||||||||||||
| HINT #0 | N/A | ||||||||||||||||||||
| HINT #0 | N/A | ||||||||||||||||||||
| HINT #0 | N/A | ||||||||||||||||||||
| HINT #0 | N/A | ||||||||||||||||||||
| HINT #0 | N/A | ||||||||||||||||||||
| HINT #0 | N/A |
| Name | Coverage (%) | Time (s) |
|---|---|---|
| ▼qmcplusplus::SoaDistanceTableAAOMPTarget | 9.11 | 12.61 |
| ▼Loop 3291 - stl_algobase.h:413-413 - exec– | 0.00 | 0.01 |
| ○Loop 3292 - SoaDistanceTableAAOMPTarget.h:440-442 - exec | 9.10 | 12.47 |
| ○Loop 3293 - SoaDistanceTableAAOMPTarget.h:437-437 - exec | 0.00 | 0.01 |
