Loop id | Source Location | Source Function | Level | Coverage run_0 (%) | Max Time Over Threads run_0 (s) | Time w.r.t. Wall Time run_0 (s) | Nb Threads run_0 | GFLOPS run_0 | Vectorization Ratio (%) | Vector Length Use (%) | Speedup If No Scalar Integer | Speedup If FP Vectorized | Speedup If Fully Vectorized | Speedup If Perfect Load Balancing run_0 | Stride 0 | Stride 1 | Stride n | Stride Unknown | Stride Indirect |
---|
121 | 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 | 2.96 | 3.69 | 3.47 | 112 | 138.85 | 96.51 | 44.01 | 1.11 | 1.22 | 1.38 | 1.07 | 2 | 0 | 0 | 0 | 11.5 |
129 | 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 | 2.8 | 3.49 | 3.28 | 112 | 131.89 | 95.82 | 43.53 | 1.11 | 1.24 | 1.28 | 1.06 | 2 | 0 | 0 | 0 | 13.5 |
664 | exec - viscosity.cpp:37-66 [...] | 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 | 2.76 | 3.38 | 3.24 | 112 | 389.57 | 96.78 | 43.31 | 1.04 | 1.04 | 1.04 | 1.05 | 2 | 0 | 0 | 0 | 14 |
192 | exec - ideal_gas.cpp:38-46 [...] | ideal_gas_kernel(int, int, int, int, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&) [clone .extracted] | Single | 2.41 | 3.03 | 2.83 | 112 | 102.57 | 97.44 | 45.03 | 1.03 | 1.03 | 1.03 | 1.07 | 0 | 0 | 0 | 0 | 4 |
101 | exec - accelerate.cpp:41-54 [...] | 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 | 2.37 | 2.98 | 2.78 | 112 | 410.42 | 98.82 | 42.21 | 1.17 | 1.16 | 2.35 | 1.08 | 2 | 0 | 0 | 0 | 24 |
245 | exec - PdV.cpp:70-84 [...] | 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 | 2.27 | 2.91 | 2.66 | 112 | 405.26 | 98.74 | 42.92 | 1.14 | 1.16 | 2.32 | 1.1 | 2 | 0 | 0 | 0 | 26 |
160 | exec - calc_dt.cpp:50-76 [...] | 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 | 2.22 | 2.78 | 2.6 | 112 | 480.70 | 98.43 | 44.29 | 1.03 | 1.03 | 1.03 | 1.07 | 2 | 0 | 0 | 0 | 17 |
247 | exec - PdV.cpp:48-64 [...] | 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 | 1.64 | 2.15 | 1.93 | 112 | 204.91 | 98.11 | 42.26 | 1.13 | 1.16 | 2.38 | 1.12 | 2 | 0 | 6 | 0 | 22 |
113 | exec - advec_cell.cpp:65-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 | 1.55 | 2.02 | 1.82 | 112 | 300.17 | 96.4 | 44.3 | 1.11 | 1.23 | 1.97 | 1.12 | 2 | 0 | 0 | 0 | 19 |
105 | 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 | 1.48 | 1.91 | 1.74 | 112 | 331.21 | 95.56 | 43.47 | 1.1 | 1.22 | 2.17 | 1.1 | 2 | 0 | 0 | 0 | 22 |
127 | exec - advec_mom.cpp:147-150 [...] | 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.34 | 1.77 | 1.58 | 112 | 57.58 | 96.34 | 42.07 | 1.12 | 1.15 | 2.31 | 1.13 | 0 | 0 | 0 | 0 | 7 |
119 | exec - advec_mom.cpp:219-222 [...] | 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.07 | 1.45 | 1.25 | 112 | 77.00 | 96.47 | 42.35 | 1.12 | 1.13 | 2.39 | 1.16 | 0 | 0 | 0 | 0 | 6 |
111 | exec - advec_cell.cpp:118-126 [...] | 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 | 0.93 | 1.24 | 1.09 | 112 | 57.88 | 97.64 | 42.91 | 1.13 | 1.18 | 1.95 | 1.14 | 2 | 0 | 0 | 0 | 13 |
178 | exec - flux_calc.cpp:37-41 [...] | 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 | 0.91 | 1.18 | 1.06 | 112 | 129.27 | 97.45 | 41.8 | 1.12 | 1.16 | 2.45 | 1.11 | 2 | 0 | 0 | 0 | 20 |
123 | exec - advec_mom.cpp:168-173 [...] | 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 | 0.88 | 1.15 | 1.03 | 112 | 232.88 | 97.2 | 42.05 | 1.13 | 1.16 | 2.49 | 1.12 | 2 | 0 | 0 | 0 | 17 |
131 | exec - advec_mom.cpp:96-101 [...] | 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 | 0.83 | 1.15 | 0.97 | 112 | 65.05 | 97.86 | 41.96 | 1.13 | 1.17 | 2.51 | 1.19 | 2 | 0 | 0 | 0 | 17 |
103 | exec - advec_cell.cpp:209-217 [...] | 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 | 0.77 | 1.15 | 0.9 | 112 | 66.76 | 97.79 | 43.2 | 1.12 | 1.16 | 2.11 | 1.28 | 2 | 0 | 0 | 0 | 17 |
141 | exec - advec_mom.cpp:45-49 [...] | 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 | 0.68 | 0.92 | 0.8 | 112 | 25.49 | 98 | 41.63 | 1.12 | 1.15 | 2.51 | 1.15 | 1 | 0 | 0 | 0 | 9 |
252 | exec - reset_field.cpp:35-39 [...] | 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 | 0.65 | 0.9 | 0.76 | 112 | 108.05 | 100 | 45.91 | 1.18 | 1 | 2.42 | 1.18 | 0 | 0 | 0 | 0 | 5 |
255 | exec - revert.cpp:35-39 [...] | revert_kernel(int, int, int, int, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&) [clone .extracted] | Single | 0.65 | 0.92 | 0.77 | 112 | 90.85 | 100 | 45.91 | 1.18 | 1 | 2.42 | 1.21 | 0 | 0 | 0 | 0 | 5 |
250 | exec - reset_field.cpp:45-49 [...] | 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 | 0.64 | 0.86 | 0.76 | 112 | 92.79 | 100 | 45.91 | 1.18 | 1 | 2.42 | 1.15 | 0 | 0 | 0 | 0 | 5 |
139 | exec - advec_mom.cpp:54-58 [...] | 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 | 0.64 | 0.87 | 0.75 | 112 | 22.75 | 97.98 | 41.79 | 1.11 | 1.16 | 2.55 | 1.16 | 1 | 0 | 0 | 0 | 10 |
125 | exec - advec_mom.cpp:158-161 [...] | 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 | 0.59 | 0.82 | 0.69 | 112 | 44.79 | 97.5 | 41.41 | 1.11 | 1.18 | 2.61 | 1.19 | 0 | 0 | 0 | 0 | 6 |
133 | exec - advec_mom.cpp:86-89 [...] | 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 | 0.58 | 0.86 | 0.68 | 112 | 49.17 | 97.56 | 41.01 | 1.11 | 1.18 | 2.6 | 1.26 | 0 | 0 | 0 | 0 | 7 |
135 | exec - advec_mom.cpp:72-76 [...] | 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 | 0.54 | 0.76 | 0.63 | 112 | 35.19 | 96.05 | 42.43 | 1.11 | 1.15 | 2.49 | 1.21 | 0 | 0 | 0 | 0 | 8 |
137 | exec - advec_mom.cpp:63-67 [...] | 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 | 0.48 | 0.72 | 0.56 | 112 | 60.09 | 96.15 | 42.63 | 1.11 | 1.13 | 2.44 | 1.29 | 0 | 0 | 0 | 0 | 8 |
117 | exec - advec_cell.cpp:45-49 [...] | 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 | 0.37 | 0.52 | 0.43 | 112 | 77.22 | 96.43 | 41.41 | 1.13 | 1.17 | 2.52 | 1.21 | 1 | 0 | 0 | 0 | 14 |
109 | exec - advec_cell.cpp:137-141 [...] | 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 | 0.36 | 0.57 | 0.42 | 112 | 77.54 | 96.49 | 41.12 | 1.13 | 1.17 | 2.52 | 1.36 | 1 | 0 | 0 | 0 | 13 |
115 | exec - advec_cell.cpp:55-59 [...] | 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 | 0.28 | 0.44 | 0.33 | 112 | 46.27 | 96.2 | 42.09 | 1.13 | 1.15 | 2.52 | 1.33 | 0 | 0 | 0 | 0 | 8 |
107 | exec - advec_cell.cpp:147-151 [...] | 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 | 0.25 | 0.43 | 0.29 | 112 | 83.83 | 96.34 | 42.38 | 1.12 | 1.13 | 2.45 | 1.48 | 0 | 0 | 0 | 0 | 8 |
175 | exec - field_summary.cpp:81-82 | field_summary(global_variables&, parallel_&) [clone .extracted] | Innermost | 0.12 | 0.19 | 0.14 | 112 | 284.75 | 86.67 | 41.67 | 1.45 | 1.38 | 2.95 | 1.36 | 0 | 0 | 0 | 0 | 2 |
173 | exec - field_summary.cpp:76-92 | field_summary(global_variables&, parallel_&) [clone .extracted] | Outermost | 0.07 | 0.11 | 0.08 | 112 | 379.34 | 95.83 | 41.32 | 1.08 | 1.13 | 2.46 | 1.38 | 4 | 0 | 0 | 2 | 0 |
185 | exec - context.h:46-69 [...] | generate_chunk(int, global_variables&) [clone .extracted] | Outermost | 0.03 | 0.07 | 0.03 | 112 | 168.07 | 62.75 | 34.88 | 1.25 | 1.31 | 3.23 | 2.33 | NA | NA | NA | NA | NA |
174 | exec - field_summary.cpp:80-82 | field_summary(global_variables&, parallel_&) [clone .extracted] | InBetween | 0.02 | 0.04 | 0.02 | 112 | 425.41 | 73.86 | 34.87 | 1 | 1 | 5.65 | 2 | 1 | 0 | 0 | 0 | 0 |
158 | exec - build_field.cpp:101-114 | build_field(global_variables&) [clone .extracted.37] | Single | 0.02 | 0.04 | 0.02 | 112 | 0.30 | 98.09 | 44.23 | 1.07 | 1 | 2.57 | 2 | 1 | 0 | 4 | 0 | 16 |
224 | exec - pack_kernel.cpp:122-124 | clover_pack_message_right(global_variables&, int, int, int, int, clover::Buffer2D<double>&, clover::Buffer1D<double>&, int, int, int, int, int, int, int) [clone .extracted] | Innermost | 0.01 | 0.05 | 0.01 | 55 | 0.00 | 0 | 12.5 | 1 | 1 | 8 | 2.5 | 0 | 1 | 0 | 1 | 0 |
218 | exec - pack_kernel.cpp:57-59 | clover_pack_message_left(global_variables&, int, int, int, int, clover::Buffer2D<double>&, clover::Buffer1D<double>&, int, int, int, int, int, int, int) [clone .extracted] | Innermost | 0.01 | 0.05 | 0.01 | 55 | 0.00 | 0 | 12.5 | 1 | 1 | 8 | 2.5 | 0 | 2 | 0 | 0 | 0 |
154 | exec - build_field.cpp:119-129 | build_field(global_variables&) [clone .extracted.27] | Single | 0.01 | 0.04 | 0.01 | 106 | 7.40 | 97.52 | 44.37 | 1.08 | 1 | 2.57 | 4 | 1 | 0 | 8 | 0 | 20 |
221 | exec - pack_kernel.cpp:90-92 | clover_unpack_message_left(global_variables&, int, int, int, int, clover::Buffer2D<double>&, clover::Buffer1D<double>&, int, int, int, int, int, int, int) [clone .extracted] | Innermost | 0.01 | 0.04 | 0.01 | 54 | 0.00 | 0 | 12.5 | 1 | 1 | 8 | 2 | 0 | 2 | 0 | 0 | 0 |
227 | exec - pack_kernel.cpp:158-160 | clover_unpack_message_right(global_variables&, int, int, int, int, clover::Buffer2D<double>&, clover::Buffer1D<double>&, int, int, int, int, int, int, int) [clone .extracted] | Innermost | 0.01 | 0.04 | 0.01 | 54 | 0.00 | 0 | 12.5 | 1 | 1 | 8 | 2 | 0 | 2 | 0 | 0 | 0 |