tree-ssa performance
David Edelsohn
dje@watson.ibm.com
Tue Jun 10 18:37:00 GMT 2003
>>>>> Diego Novillo writes:
Diego> That's not to say that we shouldn't try to limit memory usage either by
Diego> adding more smarts into the optimizers or by having the memory intensive
Diego> passes triggered at -O3 or something along those lines.
The enabled or disabled semantics of GCC are not necessary and
overly constrained. In the past I have suggested an approach similar to
IBM's compiler:
For each optimization, calculate the size of the data structure. Compare
the memory usage against the limit specified for the current compilation.
If the memory usage is within the limit, perform the optimization. If the
memory usage exceeds the limit, break the region into sub-regions and
recalculate. Repeat until sub-region fits or below threshold.
GCC's inability to adapt contributes to its excessive memory usage
and slowness. GCC needs both better heuristics for when to apply
optimizations and scaling of optimizations.
David
More information about the Gcc
mailing list