This is the mail archive of the java@gcc.gnu.org mailing list for the Java 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: need to focus on java performance?


Bryce McKinlay wrote:
David Daney wrote:
The calling method's address is in the standard location (as specified by the ABI), we know how to find the class given this information.

Finding the method's address is easy enough, but what about the address of the atable entry containing the pointer to the method?
Isn't the atable part the the calling method's class? The stack trace infrastructure allows you to find the class of a method given an IP that is contained by the method.

Thats what needs to be patched. Also, patching all the callers for a given class at once would mean we can drop all the unneeded trampolines, saving memory.

There is usually a trade off between memory usage and speed. You could walk all atables and clean them up if you wanted to. The only time this would matter would be if you were about to do a GC.

We need a pre-mark hook into the GC so that we could patch up the atable entries for all classes that had been initialized since the last GC cycle. After application startup there probably would be very few GC cycles where any action would be needed, so the overhead would be low.

David Daney.



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