options

Loops Index

3 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
886omp-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>&...Innermost8.641.291.2912.4038.3617.311.511.5112.670008.67
178omp-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.911.181.1911.0919.713.751.282.493.8111.5004.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.841.181.1812.52012.51.111.1281101120
237omp-cloverleaf - calc_dt.cpp:52-76calc_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.511.131.1312.4616.514.561221112000
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...Innermost5.940.890.8911.3314.1914.271.483.174.5311108.51
345omp-cloverleaf - PdV.cpp:71-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...Innermost5.870.880.8812.6343.3317.921.161.43.13115610
189omp-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.110.770.7711.6223.6815.211.462.213.28112.50.53.50
895omp-cloverleaf - __intel_avx_rep_memcpySingle4.870.730.7310.0010050112102000
347omp-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.640.690.6912.131614.51.081.272.44116510
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.410.660.6611.8217.2414.551.412.994.131NANANANANA
186omp-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>&...Innermost30.450.4511.56012.5122104000
250omp-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...Innermost2.940.440.4411.70201511.386.86108200
176omp-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.570.380.3811.79012.511.62100005
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.470.370.3712.246.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.360.3612.28012.511.782109000
179omp-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.270.340.3412.4145.4518.1811.425.89104400
206omp-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>&...Innermost20.30.311.13012.51.041.28105100
190omp-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>&...Innermost1.970.290.2912.9345.4518.1811.425.89102500
204omp-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>&...Innermost1.870.280.2811.25012.51.041.28105100
287omp-cloverleaf - ideal_gas.cpp:39-45ideal_gas(global_variables&, int, bool)Innermost1.840.280.2812.2910050111104000
199omp-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.640.240.2410.6787.545.311.111.252.5103100
292omp-cloverleaf - ideal_gas.cpp:39-45ideal_gas(global_variables&, int, bool)Innermost1.60.240.2412.3310050111104000
202omp-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.540.230.2310.52012.5118105000
194omp-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.230.190.1911.58012.51.031.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.170.180.1811.56012.51.061.218103300
247omp-cloverleaf - field_summary.cpp:49-91 [...]field_summary(global_variables&, parallel_&)Outermost0.930.140.1411.867.4112.962.791.7711.831NANANANANA
173omp-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...Innermost0.930.140.1412.07012.51.061.218105100
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.870.130.1310.92012.51.031.068104100
183omp-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.870.130.1312.31012.51.031.198101200
172omp-cloverleaf - advec_cell.cpp:56-57advec_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.470.070.0710.5783.3343.751.131.333102100
234omp-cloverleaf - build_field.cpp:102-113build_field(global_variables&)Innermost0.330.050.0510.0006.2511161011000
224omp-cloverleaf - build_field.cpp:120-128build_field(global_variables&)Innermost0.10.010.0110.0006.251116108000
423omp-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.10.010.0110.00012.5218102000
507omp-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.5218102000
531omp-cloverleaf - update_halo.cpp:119-120update_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.5218102000
426omp-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
450omp-cloverleaf - update_halo.cpp:410-411update_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.0066.6716.671.218102000
399omp-cloverleaf - update_halo.cpp:592-593update_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.005015.631.818102000
495omp-cloverleaf - update_halo.cpp:248-249update_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.5218102000
372omp-cloverleaf - revert.cpp:35-48 [...]revert(global_variables&)InBetween0.0300.0110.00012.51180NANANANANA
530omp-cloverleaf - update_halo.cpp:118-120update_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.251110.570NANANANANA
267omp-cloverleaf - generate_chunk.cpp:46-98 [...]generate_chunk(int, global_variables&)InBetween0.0300.0110.00012.352.57111.780NANANANANA
509omp-cloverleaf - update_halo.cpp:194-196update_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.661114.080NANANANANA
527omp-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.721113.130NANANANANA
513omp-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.25113.54000020
534omp-cloverleaf - update_halo.cpp:109-110update_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
203omp-cloverleaf - 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>&...Outermost0.0300.0110.00010.191.991.7224.61010060
506omp-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.00011.251110.570NANANANANA
411omp-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.005015.631.818002000
276omp-cloverleaf - generate_chunk.cpp:76-80generate_chunk(int, global_variables&)Innermost0.0300.0110.0010050112004000
896omp-cloverleaf - __intel_avx_rep_memsetSingle0.0300.0110.0010050112001000
522omp-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
447omp-cloverleaf - update_halo.cpp:420-421update_halo_kernel(int, int, int, int, std::array<int, 4ul> const&, std::array<int, 4ul> const&, field_type&, int const*, int)Innermost0.0300.0110.005015.631.818002000
483omp-cloverleaf - update_halo.cpp:291-292update_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.5218002000
177omp-cloverleaf - 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>&...Outermost0.0300.0110.00012.5118012311
×