|
From: Andreas R. <And...@gm...> - 2002-10-10 08:29:52
|
Tim, > Some time ago John released a changeset to put (most) globals into a > struct that imporves PPC performance by 10% or so (IIRC). I > finally made time to check it out for Acorn and with a few changes > it improves macroBenchmark performance by +30%. This makes me very happy. Interesting. BTW, the reason why it doesn't work well with Intel is that Intel has all sorts of global addressing modes built into the instructions, meaning there's no extra indirection required for accessing globals and that "wasting" that extra register for holding the ref to the global structure will work heavily against you. > I seem to remember Andreas finding that it slowed down the Windows vm, > so clearly it will have to be included in VMM in machine aware manner, > but 30% is not to be sneezed at. It's possible that the ARM winCE vm > might benefit from the change. Very likely. I've been wanting to look at the generated code a little more because in theory the compiler should be capable to figure out the memory locations statically which would solve the problem on Intel. I haven't had the time to look at it though. Cheers, - Andreas |