optimization/10155: [3.3/3.4 regression] gcc -O2/-O3 uses excessive amount of memory

Zdenek Dvorak rakdver@atrey.karlin.mff.cuni.cz
Fri May 2 19:14:00 GMT 2003


Hello,

> > http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=10155
> > 
> > How much of this can be explained with Kaveh's physmem
> > patch?  IIRC that patch is not in 3.2,  and the increase
> > in memory consumption at -O2 may be a result of that
> > patch.
> > 
> > The increase in memory at -O3 is a result of unit at a
> > time compilation (which is why I CC you, Honza).  You
> > can check that by compiling with -O2 + all flags enabled
> > at -O3 except -funit-at-a-time:
> > 
> > ./cc1 10155.c -quiet -ftime-report -O2
> > TOTAL                 :  24.74             0.74            26.24
> > 
> > ./cc1 10155.c -quiet -ftime-report -O2 -funswitch-loops 
> > -frename-registers -finline-functions
> > TOTAL                 :  31.49             0.59            33.87
> > 
> > Loop unswitching is responsible for most of the compile
> Zdenek, this really ought not to happen, what is going on?

it is just too many loops; the unswitching takes in fact almost no
time (there is nothing to unswitch at all) -- all the time increase
you see is in verify_loop_structure (it exhibits quadratic behavior
on this kind of tests) and verify_dominators, so I guess there is not much
to worry about.

Zdenek



More information about the Gcc-bugs mailing list