| Loop id | Source Location | Source Function | Level | Max Thread Time / Walltime armclang_1 (%) | Exclusive Coverage armclang_1 (%) | Inclusive Coverage armclang_1 (%) | Max Exclusive Time Over Threads armclang_1 (s) | Max Inclusive Time Over Threads armclang_1 (s) | Exclusive Time w.r.t. Wall Time armclang_1 (s) | Inclusive Time w.r.t. Wall Time armclang_1 (s) | Nb Threads armclang_1 | GFLOPS armclang_1 | Vectorization Ratio (%) | Vector Length Use (%) | Speedup If No Scalar Integer | Speedup If FP Vectorized | Speedup If Fully Vectorized | Speedup If Perfect Load Balancing armclang_1 | Stride 0 | Stride 1 | Stride n | Stride Unknown | Stride Indirect | Array Access Efficiency |
|---|
| 254 | exec - PdV.cpp:70-83 [...] | PdV_kernel(bool, int, int, int, int, double, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double... | Single | 7.82 | 7.82 | 7.82 | 10.92 | 10.92 | 10.89 | 10.89 | 64 | 53.73 | 58.9 | 75.48 | 1 | 1 | 1.19 | 1.03 | 1 | 0 | 0 | 46 | 13 | 40.00 |
| 146 | exec - accelerate.cpp:41-53 [...] | accelerate_kernel(int, int, int, int, double, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<doubl... | Single | 7.10 | 7.14 | 7.14 | 9.91 | 9.91 | 9.94 | 9.94 | 64 | 78.51 | 65.63 | 79.57 | 1 | 1 | 1.42 | 1.02 | 1 | 0 | 0 | 40 | 10 | 41.18 |
| 253 | exec - PdV.cpp:49-63 [...] | PdV_kernel(bool, int, int, int, int, double, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double... | Single | 6.02 | 6.07 | 6.07 | 8.40 | 8.40 | 8.45 | 8.45 | 64 | 49.85 | 61.34 | 75.87 | 1 | 1 | 1 | 1.02 | 1 | 0 | 0 | 34 | 11 | 39.13 |
| 167 | exec - advec_mom.cpp:219-221 [...] | advec_mom_kernel(int, int, int, int, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&... | Single | 4.61 | 4.66 | 4.66 | 6.43 | 6.43 | 6.49 | 6.49 | 64 | 25.28 | 63.89 | 81.25 | 1 | 1 | 1 | 1.01 | 0 | 0 | 0 | 9 | 4 | 34.62 |
| 163 | exec - advec_mom.cpp:147-149 [...] | advec_mom_kernel(int, int, int, int, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&... | Single | 4.36 | 4.44 | 4.44 | 6.09 | 6.09 | 6.18 | 6.18 | 64 | 26.59 | 61.76 | 77.94 | 1 | 1 | 1 | 1.01 | 0 | 0 | 0 | 10 | 4 | 35.71 |
| 201 | exec - flux_calc.cpp:37-40 [...] | flux_calc_kernel(int, int, int, int, double, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double... | Single | 4.29 | 4.34 | 4.34 | 6.00 | 6.00 | 6.05 | 6.05 | 64 | 35.65 | 54.32 | 74.73 | 1 | 1 | 1.37 | 1.02 | 1 | 0 | 0 | 22 | 8 | 38.71 |
| 183 | exec - calc_dt.cpp:50-75 [...] | calc_dt_kernel(int, int, int, int, double, double, double, double, double, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer1D<double>&, clover::Buffer1D<double>&, clover::Buffer1D<double>&am... | Single | 4.33 | 4.33 | 4.33 | 6.05 | 6.05 | 6.02 | 6.02 | 64 | 143.09 | 69.4 | 82.09 | 1 | 1 | 1 | 1.03 | 0 | 0 | 0 | 28 | 10 | 36.84 |
| 209 | exec - ideal_gas.cpp:38-45 [...] | ideal_gas_kernel(int, int, int, int, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&) [clone .omp_outlined] | Single | 4.09 | 4.14 | 4.14 | 5.70 | 5.70 | 5.77 | 5.77 | 64 | 60.56 | 68.57 | 82.86 | 1 | 1 | 1 | 1.01 | 0 | 0 | 0 | 8 | 4 | 33.33 |
| 155 | exec - advec_cell.cpp:209-216 [...] | advec_cell_kernel(int, int, int, int, int, int, clover::Buffer1D<double>&, clover::Buffer1D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<dou... | Single | 3.98 | 4.00 | 4.00 | 5.55 | 5.55 | 5.57 | 5.57 | 64 | 36.86 | 62.3 | 81.56 | 1 | 1 | 1 | 1.02 | 0 | 0 | 0 | 15 | 6 | 35.71 |
| 166 | exec - advec_mom.cpp:181-211 [...] | advec_mom_kernel(int, int, int, int, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&... | Single | 3.84 | 3.87 | 3.87 | 5.36 | 5.36 | 5.39 | 5.39 | 64 | 198.19 | 77.63 | 88.98 | 1 | 1 | 1 | 1.02 | 0 | 0 | 0 | 11 | 4 | 36.67 |
| 154 | exec - advec_cell.cpp:158-202 [...] | advec_cell_kernel(int, int, int, int, int, int, clover::Buffer1D<double>&, clover::Buffer1D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<dou... | Single | 3.64 | 3.64 | 3.64 | 5.08 | 5.08 | 5.07 | 5.07 | 64 | 190.33 | 73.77 | 87.86 | 1 | 1 | 1 | 1.03 | 0 | 0 | 0 | 18 | 6 | 37.50 |
| 151 | exec - advec_cell.cpp:118-125 [...] | advec_cell_kernel(int, int, int, int, int, int, clover::Buffer1D<double>&, clover::Buffer1D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<dou... | Single | 3.57 | 3.61 | 3.61 | 4.99 | 4.99 | 5.03 | 5.03 | 64 | 40.76 | 59.65 | 76.32 | 1 | 1 | 1 | 1.02 | 0 | 0 | 0 | 18 | 6 | 37.50 |
| 162 | exec - advec_mom.cpp:109-139 [...] | advec_mom_kernel(int, int, int, int, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&... | Single | 3.59 | 3.58 | 3.58 | 5.00 | 5.00 | 4.99 | 4.99 | 64 | 214.15 | 74.03 | 87.18 | 1 | 1 | 1 | 1.03 | 0 | 0 | 0 | 12 | 5 | 35.29 |
| 700 | exec - viscosity.cpp:37-64 [...] | viscosity_kernel(int, int, int, int, clover::Buffer1D<double>&, clover::Buffer1D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&... | Single | 3.21 | 3.25 | 3.25 | 4.48 | 4.48 | 4.52 | 4.52 | 64 | 299.76 | 76.87 | 85.91 | 1 | 1 | 1 | 1.02 | 0 | 0 | 0 | 25 | 8 | 37.88 |
| 150 | exec - advec_cell.cpp:66-110 [...] | advec_cell_kernel(int, int, int, int, int, int, clover::Buffer1D<double>&, clover::Buffer1D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<dou... | Single | 2.88 | 2.92 | 2.92 | 4.02 | 4.02 | 4.06 | 4.06 | 64 | 237.59 | 71.31 | 85.4 | 1 | 1 | 1 | 1.01 | 0 | 0 | 0 | 21 | 7 | 37.50 |
| 165 | exec - advec_mom.cpp:168-172 [...] | advec_mom_kernel(int, int, int, int, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&... | Single | 2.93 | 2.86 | 2.86 | 4.08 | 4.08 | 3.98 | 3.98 | 64 | 51.56 | 58.73 | 77.38 | 1 | 1 | 1.27 | 1.05 | 0 | 0 | 0 | 19 | 5 | 39.58 |
| 161 | exec - advec_mom.cpp:96-100 [...] | advec_mom_kernel(int, int, int, int, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&... | Single | 2.74 | 2.69 | 2.69 | 3.83 | 3.83 | 3.75 | 3.75 | 64 | 54.73 | 58.06 | 75.81 | 1 | 1 | 1.25 | 1.04 | 0 | 0 | 0 | 20 | 5 | 40.00 |
| 156 | exec - advec_mom.cpp:45-48 [...] | advec_mom_kernel(int, int, int, int, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&... | Single | 2.64 | 2.66 | 2.66 | 3.69 | 3.69 | 3.70 | 3.70 | 64 | 22.47 | 60 | 78.33 | 1 | 1 | 1 | 1.02 | 0 | 0 | 0 | 13 | 5 | 36.11 |
| 157 | exec - advec_mom.cpp:54-57 [...] | advec_mom_kernel(int, int, int, int, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&... | Single | 2.55 | 2.58 | 2.58 | 3.57 | 3.57 | 3.60 | 3.60 | 64 | 22.49 | 60 | 78.33 | 1 | 1 | 1 | 1.01 | 0 | 0 | 0 | 13 | 5 | 36.11 |
| 259 | exec - reset_field.cpp:45-48 [...] | reset_field_kernel(int, int, int, int, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&a... | Single | 2.32 | 2.34 | 2.34 | 3.23 | 3.23 | 3.26 | 3.26 | 64 | 0.00 | 57.69 | 76.92 | 1 | 1 | 1 | 1.02 | 0 | 0 | 0 | 8 | 4 | 33.33 |
| 158 | exec - advec_mom.cpp:63-66 [...] | advec_mom_kernel(int, int, int, int, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&... | Single | 2.05 | 2.06 | 2.06 | 2.87 | 2.87 | 2.87 | 2.87 | 64 | 14.09 | 61.76 | 80.15 | 1 | 1 | 1 | 1.02 | 0 | 0 | 0 | 9 | 4 | 34.62 |
| 159 | exec - advec_mom.cpp:72-75 [...] | advec_mom_kernel(int, int, int, int, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&... | Single | 1.98 | 2.00 | 2.00 | 2.76 | 2.76 | 2.79 | 2.79 | 64 | 14.87 | 59.38 | 76.56 | 1 | 1 | 1 | 1.01 | 0 | 0 | 0 | 10 | 4 | 35.71 |
| 261 | exec - revert.cpp:35-38 [...] | revert_kernel(int, int, int, int, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&) [clone .omp_outlined] | Single | 1.93 | 1.96 | 1.96 | 2.70 | 2.70 | 2.72 | 2.72 | 64 | 0.00 | 57.69 | 76.92 | 1 | 1 | 1 | 1.02 | 0 | 0 | 0 | 8 | 4 | 33.33 |
| 258 | exec - reset_field.cpp:35-38 [...] | reset_field_kernel(int, int, int, int, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&a... | Single | 1.92 | 1.94 | 1.94 | 2.68 | 2.68 | 2.71 | 2.71 | 64 | 0.00 | 57.69 | 76.92 | 1 | 1 | 1 | 1.01 | 0 | 0 | 0 | 8 | 4 | 33.33 |
| 148 | exec - advec_cell.cpp:45-48 [...] | advec_cell_kernel(int, int, int, int, int, int, clover::Buffer1D<double>&, clover::Buffer1D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<dou... | Single | 1.30 | 1.31 | 1.31 | 1.81 | 1.81 | 1.82 | 1.82 | 64 | 34.26 | 63.27 | 80.1 | 1 | 1 | 1 | 1.02 | 0 | 0 | 0 | 13 | 5 | 36.11 |
| 152 | exec - advec_cell.cpp:137-140 [...] | advec_cell_kernel(int, int, int, int, int, int, clover::Buffer1D<double>&, clover::Buffer1D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<dou... | Single | 1.27 | 1.27 | 1.27 | 1.77 | 1.77 | 1.76 | 1.76 | 64 | 34.51 | 63.27 | 80.1 | 1 | 1 | 1 | 1.03 | 0 | 0 | 0 | 13 | 5 | 36.11 |
| 153 | exec - advec_cell.cpp:147-150 [...] | advec_cell_kernel(int, int, int, int, int, int, clover::Buffer1D<double>&, clover::Buffer1D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<dou... | Single | 1.10 | 1.09 | 1.09 | 1.53 | 1.53 | 1.51 | 1.51 | 64 | 13.70 | 62.86 | 80.71 | 1 | 1 | 1 | 1.04 | 0 | 0 | 0 | 9 | 4 | 34.62 |
| 149 | exec - advec_cell.cpp:55-58 [...] | advec_cell_kernel(int, int, int, int, int, int, clover::Buffer1D<double>&, clover::Buffer1D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<dou... | Single | 1.03 | 1.03 | 1.03 | 1.44 | 1.44 | 1.44 | 1.44 | 64 | 14.09 | 60.61 | 77.27 | 1 | 1 | 1 | 1.02 | 0 | 0 | 0 | 10 | 4 | 35.71 |
| 164 | exec - advec_mom.cpp:158-160 [...] | advec_mom_kernel(int, int, int, int, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&... | Single | 1.04 | 1.03 | 1.03 | 1.44 | 1.44 | 1.43 | 1.43 | 64 | 57.47 | 68.75 | 81.25 | 1 | 1 | 1 | 1.04 | 0 | 0 | 0 | 8 | 2 | 40.00 |
| 160 | exec - advec_mom.cpp:86-88 [...] | advec_mom_kernel(int, int, int, int, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&... | Single | 1.05 | 1.02 | 1.02 | 1.46 | 1.46 | 1.43 | 1.43 | 64 | 57.52 | 68.75 | 81.25 | 1 | 1 | 1 | 1.05 | 0 | 0 | 0 | 8 | 2 | 40.00 |
| 199 | exec - field_summary.cpp:76-91 [...] | field_summary(global_variables&, parallel_&) [clone .omp_outlined] | Single | 0.34 | 0.33 | 0.33 | 0.47 | 0.47 | 0.47 | 0.47 | 64 | 126.55 | 63.16 | 80.8 | 1 | 1 | 1.28 | 1.03 | 0 | 0 | 0 | 18 | 9 | 33.33 |
| 205 | exec - context.h:69-69 [...] | generate_chunk(int, global_variables&) [clone .omp_outlined] | Single | 0.05 | 0.04 | 0.04 | 0.07 | 0.07 | 0.06 | 0.06 | 64 | 0.00 | 51.52 | 72.73 | 1 | 1 | 1 | 1.08 | 4 | 0 | 0 | 8 | 4 | 50.00 |
| 206 | exec - generate_chunk.cpp:86-98 [...] | generate_chunk(int, global_variables&) [clone .omp_outlined.1] | Single | 0.03 | 0.03 | 0.03 | 0.05 | 0.05 | 0.05 | 0.05 | 64 | 17.42 | 73.03 | 82.58 | 1 | 1 | 1.21 | 1 | 8 | 0 | 0 | 21 | 2 | 59.68 |
| 214 | exec - initialise_chunk.cpp:78-82 [...] | initialise_chunk(int, global_variables&) [clone .omp_outlined.7] | Single | 0.03 | 0.02 | 0.02 | 0.04 | 0.04 | 0.03 | 0.03 | 60 | 0.00 | 51.85 | 75 | 1 | 1 | 1 | 1.13 | 2 | 0 | 0 | 7 | 4 | 42.31 |
| 169 | exec - build_field.cpp:101-113 [...] | build_field(global_variables&) [clone .omp_outlined] | Single | 0.04 | 0.02 | 0.02 | 0.05 | 0.05 | 0.02 | 0.02 | 56 | 0.00 | 48.53 | 74.31 | 1 | 1 | 1.27 | 1.98 | 0 | 0 | 0 | 23 | 11 | 33.82 |
| 170 | exec - build_field.cpp:119-128 [...] | build_field(global_variables&) [clone .omp_outlined.1] | Single | 0.03 | 0.01 | 0.01 | 0.04 | 0.04 | 0.02 | 0.02 | 45 | 0.00 | 46.67 | 73.33 | 1 | 1 | 1 | 1.9 | 0 | 0 | 0 | 16 | 8 | 33.33 |