This is the mail archive of the gcc@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: [RFC] Contributing tree-ssa to mainline


On Sat, Jan 17, 2004 at 04:07:26AM +0100, Steven Bosscher wrote:
> On Saturday 17 January 2004 03:30, Richard Kenner wrote:
> > My feeling is that "success" would be in showing at least one class of code
> > where we see very significantly better code (at least a factor of two) and
> > we see significant (around 10-20%) performance improvement in a larger
> > class of test cases.
[...]
> Expecting tree-ssa to produce code better by a factor of two is simply
> unreasonable.

No, he's asking for one particular class of code, not all code.

Ok, here ya go -- PR 2692.  Take the (moderately large) C test case
there and attach the trivial driver:

	int main()
	{
	  Complex8 m[6][6];
	  volatile Complex8 sink;
	  int i;

	  memset (m, 0, sizeof (m));
	  for (i = 0; i < 1000000; i++)
	    sink = determinant(m);

	  return 0;
	}


		MAINLINE		TREE-SSA	Change
user time	4.96			2.52		50.8%
.text size	51523			28687		55.6%

So we've missed the required factor of 2 on this test case by 0.8%.
Since that seems likely to be in the relm of measurement error, I
think that should qualify.

With a bit more work unwravelling C++ front-end obfuscation, I would
expect the 10-20% to be visible on just about any object abstraction
test case.  Particularly for any object that has more than one field,
and thus can't benefit from rtl addressof.  That seems like it should
be a large enough class to qualify.


r~


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