Memory overhead of tree-SSA optimization passes

Daniel Berlin dberlin@dberlin.org
Sat Sep 4 15:53:00 GMT 2004


On Sat, 2004-09-04 at 15:22 +0200, Jan Hubicka wrote:
> Hi,
> I've made another little experiment about memory usage.  On combine.c we
> produce 20MB of garbage for -O0 compilation (compared to 12MB of 3.4),
> 29MB of garbage with -O2 but all optimizers on tree-ssa disabled (so we
> only go in and out SSA) and 44MB with default settings.
> 
> If you look into individual optimizers, we currently have no optimizer
> saving memory (except for possibly DCE that cause abort when disabled)
> major offender are dominators and pre together producing 9.8MB of
> garbage (roughly 3/4 of the overall overhead)
> 
> For PRE we consume most of memory in bitmaps, I am just testing patch
> obstackeizing them that should actually help here reducing GGC garbage
> to 40MB but still I don't follow why we need such an extreme amount of
> bitmaps.
> 
Basically, PRE doesn't ever free the sets, it just creates new ones and
lets GGC take care of freeing the old ones.

It's something i've been meaning to clean up for a while (we know when
we can free the old sets, it's just a matter of doing it).
I can fix it if it's really creating that much garbage.
However, it never actually showed up as something that mattered in any
timings i did.

--Dan



More information about the Gcc mailing list