This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Tremendous performance regression in 1.1.2 -> mainline
- To: lucier at math dot purdue dot edu, dje at watson dot ibm dot com
- Subject: Re: Tremendous performance regression in 1.1.2 -> mainline
- From: Brad Lucier <lucier at math dot purdue dot edu>
- Date: Thu, 6 Apr 2000 13:21:40 -0500 (EST)
- Cc: gcc at gcc dot gnu dot org, feeley at iro dot umontreal dot ca, hosking at cs dot purdue dot edu, mark at codesourcery dot com, law at cygnus dot com
> Part of the problem may be due to GCC not applying appropriate
> heuristics (or any heuristics) to determine when an optimization will be
> effective. Maybe -O3 or -O4 or some separate flag should control
> disabling new heuristics to limit when an optimization is applied. In
> other words, -O2 would enable the optimization but the optimization only
> would be applied if some heuristic were met (e.g., flow graph edges, basic
> blocks, loops, etc.); an additional flag would remove the heuristic limit
> and always apply the optimization for that last bit of performance
> improvement.
The problem in this case is simple: an O(N^2) algorithm is used to compute
flow dominators instead of an available O(N) algorithm. The fix is perhaps
not so simple; I don't feel competent to rewrite the code. But certainly
no heuristic or clamp is necessary in this case.
Brad Lucier