[Bug tree-optimization/19794] [meta-bug] Jump threading related bugs
law at redhat dot com
gcc-bugzilla@gcc.gnu.org
Fri Apr 8 18:19:00 GMT 2005
------- Additional Comments From law at redhat dot com 2005-04-08 18:19 -------
OK. I'm pretty sure the perl improvements are really just an artifact of
changes in what objects get spilled onto the stack on the offsets of each
particular object.
I can with a small amount of work twiddle register allocation (and thus
spilling behavior) in such a way as to make perl built without the threading
changes run significantly faster than perl built with the threading changes.
[ Which is the exact opposite of the runtime behavior if we do not twiddle
the register allocation priorities. ]
While it's certainly not proof, I'm confident that the reason performance is
swinging back and forth is due to cache effects in the stack, particuliarly
for spill slots in one critical function. Anything which changes which objects
are spilled on the stack, or the offsets of those objects on the stack is
likely to cause wild swings in performance, at least on P4s.
The net result is, IMHO, we should ignore Perl's results when benchmarking
the new threading changes on P4s, and possibly other platforms. This may
also hold true when benchmarking other changes which could potentially affect
register allocation (which, of course, is just about everything).
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19794
More information about the Gcc-bugs
mailing list