[Bug ipa/114531] Feature proposal for an `-finline-functions-aggressive` compiler option
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114531 --- Comment #9 from Rama Malladi --- I wanted us to review this feature implementation given GCC 15 Stage 1 development has started. Thank you.
[Bug ipa/114531] Feature proposal for an `-finline-functions-aggressive` compiler option
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114531 Rama Malladi changed: What|Removed |Added CC||rvmallad at amazon dot com --- Comment #8 from Rama Malladi --- Created attachment 57898 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=57898=edit Updated patch for `-finline-functions-aggressive` GCC option. This is an updated patch to include a new GCC option: `-finline-functions-aggressive`. It has the `-O3` inlining heuristics replaced with an entry that implies `OPT_finline_functions_aggressive` is enabled. It also has an entry in `invoke.texi` for documentation stating that this option selects the same inlining heuristics as `-O3`.
[Bug ipa/114531] Feature proposal for an `-finline-functions-aggressive` compiler option
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114531 Richard Biener changed: What|Removed |Added Severity|normal |enhancement
[Bug ipa/114531] Feature proposal for an `-finline-functions-aggressive` compiler option
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114531 --- Comment #7 from Rama Malladi --- (In reply to Rama Malladi from comment #5) > (In reply to Andrew Pinski from comment #3) > > Also do you have numbers with lto enabled? Or is these without lto? > > > > Does LTO improve the situation for Envoy too? > > These numbers are without lto. I haven't tried it but I can try and post an > update. I checked and found the Envoy run was w/o LTO but SPEC cpu2017 intrate was w LTO. I tried a build of Envoy w LTO and it failed. I need to debug that issue further. Below are perf results w/o LTO. gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04). copies=8-O2 -Ofast Gain w -O2 + inlining Gain w noLTO noLTO Ofast noLTO inlining 500.perlbench_r 33.733.398.8% 33.298.5% 502.gcc_r 45.246.9103.8% 46.3102.4% 505.mcf_r 44.744.399.1% 44.699.8% 520.omnetpp_r 21.424.4114.0% 21.399.5% 523.xalancbmk_r 41.645.5109.4% 44 105.8% 525.x264_r 44.289 201.4% 43.999.3% 531.deepsjeng_r 32.832.8100.0% 33.1100.9% 541.leela_r 28.630.5106.6% 30.3105.9% 548.exchange2_r 64.164.6100.8% 64.1100.0% 557.xz_r20.320.4100.5% 20.3100.0% SPECrate..base 35.639.4110.7% 36 101.1%
[Bug ipa/114531] Feature proposal for an `-finline-functions-aggressive` compiler option
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114531 Andrew Pinski changed: What|Removed |Added See Also||https://gcc.gnu.org/bugzill ||a/show_bug.cgi?id=109849 --- Comment #6 from Andrew Pinski --- See PR 109849 for some of the improvements
[Bug ipa/114531] Feature proposal for an `-finline-functions-aggressive` compiler option
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114531 --- Comment #5 from Rama Malladi --- (In reply to Andrew Pinski from comment #3) > Also do you have numbers with lto enabled? Or is these without lto? > > Does LTO improve the situation for Envoy too? These numbers are without lto. I haven't tried it but I can try and post an update.
[Bug ipa/114531] Feature proposal for an `-finline-functions-aggressive` compiler option
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114531 --- Comment #4 from Rama Malladi --- (In reply to Andrew Pinski from comment #1) > Maybe we should figure out why the increase of the limits help and add extra > code to get better heuristics rather than just tweaking the limits. > > I know that there was some improvements for gcc 14 already for the > heuristics for c++ code. interesting... thank you.
[Bug ipa/114531] Feature proposal for an `-finline-functions-aggressive` compiler option
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114531 --- Comment #3 from Andrew Pinski --- Also do you have numbers with lto enabled? Or is these without lto? Does LTO improve the situation for Envoy too?
[Bug ipa/114531] Feature proposal for an `-finline-functions-aggressive` compiler option
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114531 --- Comment #2 from Andrew Pinski --- I suspect the implementation of the option should be changed slight as how does it interact with the user supplying the params too.
[Bug ipa/114531] Feature proposal for an `-finline-functions-aggressive` compiler option
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114531 --- Comment #1 from Andrew Pinski --- Maybe we should figure out why the increase of the limits help and add extra code to get better heuristics rather than just tweaking the limits. I know that there was some improvements for gcc 14 already for the heuristics for c++ code.