need to focus on java performance?

David Daney ddaney@avtrex.com
Thu May 25 16:04:00 GMT 2006


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.


More information about the Java mailing list

AltStyle によって変換されたページ (->オリジナル) /