[Bug tree-optimization/52272] [4.7/4.8 regression] Performance regresswion of 410.bwaves on x86.
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52272 --- Comment #12 from Michael Meissner meissner at gcc dot gnu.org 2012-04-20 23:15:56 UTC --- Created attachment 27205 -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=27205 ivtops dump from subversion id 183933 (before regression)
[Bug tree-optimization/52272] [4.7/4.8 regression] Performance regresswion of 410.bwaves on x86.
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52272 --- Comment #13 from Michael Meissner meissner at gcc dot gnu.org 2012-04-20 23:16:24 UTC --- I'm attaching the ivopts dump from 4 runs: 1) Subversion id 183933, the revision before the change; 2) Subversion id 183934, the revision that slowed down bwaves; 3) Subversion id 186630, top of the tree this morning; 4) Subversion id 186630 + the experimental patch. The experimental patch does not change the code at all on the PowerPC. 1) The mat_times_vec_ function is 27% slower in subversion id 183934; 2) The mat_times_vec_ function is 24% slower in today's versions.
[Bug tree-optimization/52272] [4.7/4.8 regression] Performance regresswion of 410.bwaves on x86.
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52272 --- Comment #14 from Michael Meissner meissner at gcc dot gnu.org 2012-04-20 23:19:52 UTC --- Created attachment 27207 -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=27207 ivtops dump from subversion id 183934 (after regression)
[Bug tree-optimization/52272] [4.7/4.8 regression] Performance regresswion of 410.bwaves on x86.
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52272 --- Comment #15 from Michael Meissner meissner at gcc dot gnu.org 2012-04-20 23:21:14 UTC --- Created attachment 27208 -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=27208 ivtops dump from subversion id 186630 (top of tree on April 20th, 2012)
[Bug tree-optimization/52272] [4.7/4.8 regression] Performance regresswion of 410.bwaves on x86.
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52272 --- Comment #16 from Michael Meissner meissner at gcc dot gnu.org 2012-04-20 23:22:54 UTC --- Created attachment 27209 -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=27209 ivtops dump from subversion id 186630 + experimental patch from Igor Zamyatin
[Bug tree-optimization/52272] [4.7/4.8 regression] Performance regresswion of 410.bwaves on x86.
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52272 --- Comment #11 from Igor Zamyatin izamyatin at gmail dot com 2012-04-19 13:09:25 UTC --- Another version of the experimental patch is here - http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52868 It fixes bwaves regression on x86 and might not trigger performance on other platforms
[Bug tree-optimization/52272] [4.7/4.8 regression] Performance regresswion of 410.bwaves on x86.
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52272 --- Comment #10 from Igor Zamyatin izamyatin at gmail dot com 2012-03-29 11:04:27 UTC --- Is it possible to look at the regressed test-case and gcc dumps with -fdump-tree-ivopts-details option w/o that change? Thanks in advance
[Bug tree-optimization/52272] [4.7/4.8 regression] Performance regresswion of 410.bwaves on x86.
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52272 Michael Meissner meissner at gcc dot gnu.org changed: What|Removed |Added CC||meissner at gcc dot gnu.org --- Comment #9 from Michael Meissner meissner at gcc dot gnu.org 2012-03-27 23:42:17 UTC --- I get a regression of about 15% on power7 due to this change.
[Bug tree-optimization/52272] [4.7/4.8 regression] Performance regresswion of 410.bwaves on x86.
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52272 Igor Zamyatin izamyatin at gmail dot com changed: What|Removed |Added CC||izamyatin at gmail dot com --- Comment #8 from Igor Zamyatin izamyatin at gmail dot com 2012-03-26 11:05:52 UTC --- Sort of experimental patch Index: tree-ssa-loop-ivopts.c === --- tree-ssa-loop-ivopts.c (revision 185039) +++ tree-ssa-loop-ivopts.c (working copy) @@ -4114,6 +4114,7 @@ else if (ratio == 1) { tree real_cbase = cbase; + int diff_cost, add_cost1; /* Check to see if any adjustment is needed. */ if (cstepi == 0 stmt_is_after_inc) @@ -4133,7 +4134,10 @@ ubase, real_cbase, symbol_present, var_present, offset, depends_on); + diff_cost = cost.cost; cost.cost /= avg_loop_niter (data-current_loop); + if (diff_cost (add_cost1 = add_cost(TYPE_MODE (ctype), data-speed))) + cost.cost += add_cost1; } else if (address_p !POINTER_TYPE_P (ctype) It was found during some side investigation regarding ivopts phase work. Patch fixes the regression.
[Bug tree-optimization/52272] [4.7/4.8 regression] Performance regresswion of 410.bwaves on x86.
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52272 Jakub Jelinek jakub at gcc dot gnu.org changed: What|Removed |Added CC||jakub at gcc dot gnu.org Target Milestone|4.7.0 |4.8.0 Summary|[4.7 regression]|[4.7/4.8 regression] |Performance regresswion of |Performance regresswion of |410.bwaves on x86. |410.bwaves on x86.