This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [tree-ssa] Speed up tree-ssa-ccp


On Mon, 2003-06-16 at 11:20, law@redhat.com wrote:
> In message <1055776018.3322.69.camel@frodo.toronto.redhat.com>, Diego Novillo w
> rites:
>  >Cool.  I was working along similar lines, but also included regular
>  >statements in the check.
> I'd expect the gains to be much smaller for regular statements because
> they can only be evaluated a set number of times (bounded by the number
> of real operands associated with the statement).
> 
> PHI nodes are different in that they can be evaluated many times (once for
> each incoming edge to the block).  While most of the time blocks only have
> a few incoming edges, EH and other odd flow control beasts (like computed
> gotos) can break that assumption and make reevaluation of PHIs expensive.
> 
> But if it's showing good results above and beyond PHIs, then go for it.
> 
Yeah.  On the two cases from Gerald and Richard G., the differences are
noticeable.  For
http://www.tat.physik.uni-tuebingen.de/~rguenth/FieldCentering.cmpl.ii.gz, adding regular statements and the other tidbits result in CCP being 12 times faster than only considering PHI nodes, shaving about 23 seconds from the total compilation time.  This test is also nasty for PHI node insertion.  We spend 20% of the total compile time inserting PHI nodes.  I'm looking at this next.

For http://gcc.gnu.org/PR8361, we get a speedup of 2 in the CCP pass
(about 2 secs), over what we got with the patch to test PHI nodes.  In
this test case, the times are more spread out.  The only passes that
seem to stand out are the parser (10%) and CSE (11%).


Diego.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]