options

Loops Index

2 loops have been discarded from the report because their coverage is lower than the threshold set by object_coverage_threshold (0.01%). It represents about 0% of the application. To include them, change the value of object_coverage_threshold in the experiment directory configuration file, then rerun the command with the additionnal parameter --force-static-analysis

Colums Filter

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
Loop idSource LocationSource FunctionLevelCoverage run_0 (%)Max Time Over Threads run_0 (s)Time w.r.t. Wall Time run_0 (s)Nb Threads run_0GFLOPS run_0Vectorization Ratio (%)Vector Length Use (%)Speedup If No Scalar IntegerSpeedup If FP VectorizedSpeedup If Fully VectorizedSpeedup If Perfect Load Balancing run_0Stride 0Stride 1Stride nStride UnknownStride Indirect
176omp-cloverleaf - advec_mom.cpp:182-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>&...Innermost7.881.151.1511.1023.0315.381.52.413.7511.5105.50
148omp-cloverleaf - accelerate.cpp:42-53accelerate_kernel(int, int, int, int, double, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<doubl...Innermost7.741.131.1312.68012.51.081.181101120
235omp-cloverleaf - calc_dt.cpp:51-75calc_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...Innermost7.671.121.1212.4116.514.561221012000
877omp-cloverleaf - viscosity.cpp:38-64viscosity_kernel(int, int, int, int, clover::Buffer1D<double>&, clover::Buffer1D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&...Innermost7.161.051.0512.9529.2316.1511.681.68133.33600
154omp-cloverleaf - advec_cell.cpp:159-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...Innermost6.370.930.9311.4014.5214.161.593.214.5311009.51
336omp-cloverleaf - PdV.cpp:71-83PdV_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...Innermost5.930.860.8712.5443.3317.921.161.43.13112910
187omp-cloverleaf - advec_mom.cpp:110-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>&...Innermost5.240.770.7711.7423.7215.231.462.193.28114110
338omp-cloverleaf - PdV.cpp:50-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...Innermost4.620.680.6712.431614.51.081.272.44115610
886omp-cloverleaf - __intel_avx_rep_memcpySingle4.490.660.6610.0010050112102000
165omp-cloverleaf - advec_cell.cpp:67-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...Innermost4.450.650.6511.8617.2414.551.392.954.041NANANANANA
248omp-cloverleaf - flux_calc.cpp:38-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...Innermost3.120.450.4511.69201511.386.86108200
185omp-cloverleaf - advec_mom.cpp:148-149advec_mom_kernel(int, int, int, int, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&...Innermost3.050.440.4411.507521.88111103100
174omp-cloverleaf - advec_mom.cpp:220-221advec_mom_kernel(int, int, int, int, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&...Innermost2.840.410.4111.51012.511.62105000
162omp-cloverleaf - advec_cell.cpp:119-125advec_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...Innermost2.60.380.3812.036.2513.28122106000
151omp-cloverleaf - advec_cell.cpp:210-216advec_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...Innermost2.40.350.3512.34012.511.782109000
177omp-cloverleaf - advec_mom.cpp:169-172advec_mom_kernel(int, int, int, int, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&...Innermost2.230.320.3212.4745.4518.1811.425.89104400
204omp-cloverleaf - advec_mom.cpp:46-48advec_mom_kernel(int, int, int, int, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&...Innermost2.120.310.3111.06012.51.041.28105100
202omp-cloverleaf - advec_mom.cpp:55-57advec_mom_kernel(int, int, int, int, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&...Innermost2.060.30.311.37012.51.041.28105100
188omp-cloverleaf - advec_mom.cpp:97-100advec_mom_kernel(int, int, int, int, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&...Innermost2.060.30.312.5345.4518.1811.425.89102500
197omp-cloverleaf - advec_mom.cpp:73-75advec_mom_kernel(int, int, int, int, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&...Innermost1.880.270.2710.5987.545.3111.252.5103100
280omp-cloverleaf - ideal_gas.cpp:39-45ideal_gas(global_variables&, int, bool)Innermost1.820.260.2612.4610050111104000
285omp-cloverleaf - ideal_gas.cpp:39-45ideal_gas(global_variables&, int, bool)Innermost1.750.250.2612.1510050111104000
200omp-cloverleaf - advec_mom.cpp:64-66advec_mom_kernel(int, int, int, int, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&...Innermost1.370.20.210.85012.5118105000
192omp-cloverleaf - advec_mom.cpp:86-88advec_mom_kernel(int, int, int, int, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&...Innermost1.20.170.1712.18012.511.198101200
158omp-cloverleaf - advec_cell.cpp:138-140advec_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...Innermost1.10.160.1611.50012.51.061.218103300
171omp-cloverleaf - advec_cell.cpp:46-48advec_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...Innermost1.060.160.1611.38012.51.061.218105100
245omp-cloverleaf - field_summary.cpp:49-91 [...]field_summary(global_variables&, parallel_&)Outermost1.030.150.1511.671.9612.016.131.9312.21NANANANANA
181omp-cloverleaf - advec_mom.cpp:158-160advec_mom_kernel(int, int, int, int, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&...Innermost0.890.130.1312.00012.51.031.198101200
157omp-cloverleaf - advec_cell.cpp:148-150advec_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...Innermost0.860.120.1210.58012.511.068104100
170omp-cloverleaf - advec_cell.cpp:56-58advec_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...Innermost0.720.10.1110.3687.545.3111.252.5103100
232omp-cloverleaf - build_field.cpp:102-113build_field(global_variables&)Innermost0.310.040.0410.0006.2511161011000
363omp-cloverleaf - revert.cpp:35-48 [...]revert(global_variables&)InBetween0.070.010.0110.00012.231114.191NANANANANA
498omp-cloverleaf - update_halo.cpp:205-206update_halo_kernel(int, int, int, int, std::array<int, 4ul> const&, std::array<int, 4ul> const&, field_type&, int const*, int)Innermost0.070.010.0110.00012.5118102000
222omp-cloverleaf - build_field.cpp:120-128build_field(global_variables&)Innermost0.070.010.0110.0006.251116108000
414omp-cloverleaf - update_halo.cpp:506-507update_halo_kernel(int, int, int, int, std::array<int, 4ul> const&, std::array<int, 4ul> const&, field_type&, int const*, int)Innermost0.070.010.0110.00012.5118102000
417omp-cloverleaf - update_halo.cpp:496-497update_halo_kernel(int, int, int, int, std::array<int, 4ul> const&, std::array<int, 4ul> const&, field_type&, int const*, int)Innermost0.070.010.0110.00012.51.2518102000
435omp-cloverleaf - update_halo.cpp:433-434update_halo_kernel(int, int, int, int, std::array<int, 4ul> const&, std::array<int, 4ul> const&, field_type&, int const*, int)Innermost0.0300.0110.0066.6716.671.518000020
528omp-cloverleaf - update_halo.cpp:99-100update_halo_kernel(int, int, int, int, std::array<int, 4ul> const&, std::array<int, 4ul> const&, field_type&, int const*, int)Innermost0.0300.0110.00010.941.13113.33000020
369omp-cloverleaf - update_halo.cpp:668-669update_halo_kernel(int, int, int, int, std::array<int, 4ul> const&, std::array<int, 4ul> const&, field_type&, int const*, int)Innermost0.0300.0110.00012.51.2518002000
887omp-cloverleaf - __intel_avx_rep_memsetSingle0.0300.0110.0010050112001000
262omp-cloverleaf - generate_chunk.cpp:46-98 [...]generate_chunk(int, global_variables&)InBetween0.0300.0110.00012.363.26111.480NANANANANA
518omp-cloverleaf - update_halo.cpp:131-133update_halo_kernel(int, int, int, int, std::array<int, 4ul> const&, std::array<int, 4ul> const&, field_type&, int const*, int)Outermost0.0300.0110.00011.4611130NANANANANA
392omp-cloverleaf - update_halo.cpp:581-583update_halo_kernel(int, int, int, int, std::array<int, 4ul> const&, std::array<int, 4ul> const&, field_type&, int const*, int)Outermost0.0300.0110.0009.91113.540NANANANANA
269omp-cloverleaf - generate_chunk.cpp:76-80generate_chunk(int, global_variables&)Innermost0.0300.0110.0010050112004000
402omp-cloverleaf - update_halo.cpp:549-550update_halo_kernel(int, int, int, int, std::array<int, 4ul> const&, std::array<int, 4ul> const&, field_type&, int const*, int)Innermost0.0300.0110.0066.6716.671.1318002000
184omp-cloverleaf - advec_mom.cpp:147-149advec_mom_kernel(int, int, int, int, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&...Outermost0.0300.0110.00012.52.131.976.780100.53.250
203omp-cloverleaf - 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>&...Outermost0.0300.0110.0009.92.031.7123.7010050
513omp-cloverleaf - update_halo.cpp:152-153update_halo_kernel(int, int, int, int, std::array<int, 4ul> const&, std::array<int, 4ul> const&, field_type&, int const*, int)Innermost0.0300.0110.00012.51.2518002000
155omp-cloverleaf - advec_cell.cpp:37-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...Outermost0.0300.0110.00011.811110.25011.521.50
497omp-cloverleaf - update_halo.cpp:204-206update_halo_kernel(int, int, int, int, std::array<int, 4ul> const&, std::array<int, 4ul> const&, field_type&, int const*, int)Outermost0.0300.0110.00010.861110.670NANANANANA
504omp-cloverleaf - update_halo.cpp:185-186update_halo_kernel(int, int, int, int, std::array<int, 4ul> const&, std::array<int, 4ul> const&, field_type&, int const*, int)Innermost0.0300.0110.00010.941.13113.33000020
173omp-cloverleaf - advec_mom.cpp:219-221advec_mom_kernel(int, int, int, int, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&, clover::Buffer2D<double>&...Outermost0.0300.0112.00012.231.621.647.080100.530
455omp-cloverleaf - update_halo.cpp:356-358update_halo_kernel(int, int, int, int, std::array<int, 4ul> const&, std::array<int, 4ul> const&, field_type&, int const*, int)Outermost0.0300.0110.00010.421113.260NANANANANA
×