https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90539
--- Comment #5 from Martin Liška <marxin at gcc dot gnu.org> ---
Ok, looking at perf report:
$ head -n20 before.report.txt
# Overhead Command Shared Object Symbol
# ........ ............... .......................
...................................................................
#
7.45% wrf_peak.amd64- wrf_peak.amd64-m64-mine [.]
__module_advect_em_MOD_advect_scalar
5.54% wrf_peak.amd64- wrf_peak.amd64-m64-mine [.]
__module_small_step_em_MOD_advance_w
5.48% wrf_peak.amd64- wrf_peak.amd64-m64-mine [.]
__module_small_step_em_MOD_advance_uv
5.45% wrf_peak.amd64- libc-2.29.so [.]
__memset_avx2_unaligned_erms
4.51% wrf_peak.amd64- wrf_peak.amd64-m64-mine [.]
__module_big_step_utilities_em_MOD_calc_cq
3.84% wrf_peak.amd64- wrf_peak.amd64-m64-mine [.]
__module_bl_ysu_MOD_ysu2d
3.80% wrf_peak.amd64- wrf_peak.amd64-m64-mine [.]
__module_small_step_em_MOD_calc_p_rho
3.71% wrf_peak.amd64- wrf_peak.amd64-m64-mine [.]
__module_small_step_em_MOD_advance_mu_t
3.55% wrf_peak.amd64- libmvec-2.29.so [.] _ZGVdN8vv_powf_avx2
3.45% wrf_peak.amd64- libc-2.29.so [.]
__memmove_avx_unaligned_erms
2.82% wrf_peak.amd64- wrf_peak.amd64-m64-mine [.]
__module_small_step_em_MOD_sumflux
2.69% wrf_peak.amd64- wrf_peak.amd64-m64-mine [.]
__module_em_MOD_rk_update_scalar
2.45% wrf_peak.amd64- wrf_peak.amd64-m64-mine [.]
__module_mp_lin_MOD_clphy1d
2.24% wrf_peak.amd64- wrf_peak.amd64-m64-mine [.]
__module_mp_lin_MOD_lin_et_al
2.16% wrf_peak.amd64- wrf_peak.amd64-m64-mine [.]
__module_small_step_em_MOD_small_step_prep
2.09% wrf_peak.amd64- wrf_peak.amd64-m64-mine [.]
__module_big_step_utilities_em_MOD_curvature
2.07% wrf_peak.amd64- wrf_peak.amd64-m64-mine [.]
__module_em_MOD_rk_addtend_dry
$ head -n20 after.report.txt
# Overhead Command Shared Object Symbol
# ........ ............... .......................
...................................................................
#
19.91% wrf_peak.amd64- wrf_peak.amd64-m64-mine [.] solve_interface_
5.99% wrf_peak.amd64- wrf_peak.amd64-m64-mine [.]
__module_advect_em_MOD_advect_scalar
4.59% wrf_peak.amd64- libc-2.29.so [.]
__memset_avx2_unaligned_erms
4.45% wrf_peak.amd64- wrf_peak.amd64-m64-mine [.]
__module_small_step_em_MOD_advance_w
4.30% wrf_peak.amd64- wrf_peak.amd64-m64-mine [.]
__module_small_step_em_MOD_advance_uv
3.63% wrf_peak.amd64- wrf_peak.amd64-m64-mine [.]
__module_big_step_utilities_em_MOD_calc_cq
3.11% wrf_peak.amd64- wrf_peak.amd64-m64-mine [.]
__module_small_step_em_MOD_calc_p_rho
3.10% wrf_peak.amd64- wrf_peak.amd64-m64-mine [.]
__module_bl_ysu_MOD_ysu2d
3.02% wrf_peak.amd64- wrf_peak.amd64-m64-mine [.]
__module_small_step_em_MOD_advance_mu_t
2.77% wrf_peak.amd64- libc-2.29.so [.]
__memmove_avx_unaligned_erms
2.75% wrf_peak.amd64- libmvec-2.29.so [.] _ZGVdN8vv_powf_avx2
2.31% wrf_peak.amd64- wrf_peak.amd64-m64-mine [.]
__module_small_step_em_MOD_sumflux
2.10% wrf_peak.amd64- wrf_peak.amd64-m64-mine [.]
__module_em_MOD_rk_update_scalar
1.87% wrf_peak.amd64- wrf_peak.amd64-m64-mine [.]
__module_mp_lin_MOD_clphy1d
1.78% wrf_peak.amd64- wrf_peak.amd64-m64-mine [.]
__module_mp_lin_MOD_lin_et_al
1.69% wrf_peak.amd64- wrf_peak.amd64-m64-mine [.]
__module_small_step_em_MOD_small_step_prep
1.68% wrf_peak.amd64- wrf_peak.amd64-m64-mine [.]
__module_big_step_utilities_em_MOD_curvature
The difference is in solve_interface_, I'll analyze that..