> Am 31.01.2022 um 22:05 schrieb Eugene Rozenfeld > <eugene.rozenf...@microsoft.com>: > > Thank you for the review Richard. Is it ok to commit this change to trunk > now or should I wait till GCC 13 development starts? > This seems like a very low risk change. Yes, it’s Ok now. Richard > Thanks, > > Eugene > > -----Original Message----- > From: Richard Biener <richard.guent...@gmail.com> > Sent: Monday, January 31, 2022 1:23 AM > To: Eugene Rozenfeld <eugene.rozenf...@microsoft.com> > Cc: gcc-patches@gcc.gnu.org > Subject: [EXTERNAL] Re: [PATCH] AutoFDO: don't set > param_early_inliner_max_iterations to 10. > >> On Sat, Jan 29, 2022 at 12:24 AM Eugene Rozenfeld via Gcc-patches >> <gcc-patches@gcc.gnu.org> wrote: >> >> param_early_inliner_max_iterations specifies the maximum number of >> nested indirect inlining iterations performed by early inliner. >> Normally, the default value is 1. >> >> For AutoFDO this parameter was also used as the number of iteration >> for its indirect call promotion loop and the default value was set to 10. >> While it makes sense to have 10 in the indirect call promotion loop >> (we want to make the IR match the profiled binary before actual >> annotation) there is no reason to have a special default value for the >> regular early inliner. >> >> This change removes the special AutoFDO default value setting for >> param_early_inliner_max_iterations while keeping 10 as the number of >> iterations for the AutoFDO indirect call promotion loop. >> >> This change improves a simple fibonacci benchmark in AutoFDO mode by >> 15% on x86_64-pc-linux-gnu. >> >> Tested on x86_64-pc-linux-gnu. > > OK. > > Richard. > >> gcc/ChangeLog: >> * auto-profile.cc (auto_profile): Hard-code the number of iterations >> (10). >> >> gcc/ChangeLog: >> * opt.cc (common_handle_option): Don't set >> param_early_inliner_max_iterations to 10 for AutoFDO. >> --- >> gcc/auto-profile.cc | 3 +-- >> gcc/opts.cc | 2 -- >> 2 files changed, 1 insertion(+), 4 deletions(-) >> >> diff --git a/gcc/auto-profile.cc b/gcc/auto-profile.cc index >> 0bfaae7b091..c7cee639c85 100644 >> --- a/gcc/auto-profile.cc >> +++ b/gcc/auto-profile.cc >> @@ -1644,8 +1644,7 @@ auto_profile (void) >> function before annotation, so the profile inside bar@loc_foo2 >> will be useful. */ >> autofdo::stmt_set promoted_stmts; >> - for (int i = 0; i < opt_for_fn (node->decl, >> - param_early_inliner_max_iterations); i++) >> + for (int i = 0; i < 10; i++) >> { >> if (!flag_value_profile_transformations >> || !autofdo::afdo_vpt_for_early_inline (&promoted_stmts)) >> diff --git a/gcc/opts.cc b/gcc/opts.cc index 17e1884f0e4..f6f6a8e1709 >> 100644 >> --- a/gcc/opts.cc >> +++ b/gcc/opts.cc >> @@ -2899,8 +2899,6 @@ common_handle_option (struct gcc_options *opts, >> case OPT_fauto_profile: >> enable_fdo_optimizations (opts, opts_set, value); >> SET_OPTION_IF_UNSET (opts, opts_set, flag_profile_correction, value); >> - SET_OPTION_IF_UNSET (opts, opts_set, >> - param_early_inliner_max_iterations, 10); >> break; >> >> case OPT_fprofile_generate_: >> -- >> 2.25.1
Re: [EXTERNAL] Re: [PATCH] AutoFDO: don't set param_early_inliner_max_iterations to 10.
Richard Biener via Gcc-patches Mon, 31 Jan 2022 22:29:19 -0800
- [PATCH] AutoFDO: don't set param_early_in... Eugene Rozenfeld via Gcc-patches
- Re: [PATCH] AutoFDO: don't set param... Richard Biener via Gcc-patches
- RE: [EXTERNAL] Re: [PATCH] AutoF... Eugene Rozenfeld via Gcc-patches
- Re: [EXTERNAL] Re: [PATCH] A... Richard Biener via Gcc-patches