Mailing Lists: Apple Mailing Lists

Image of Mac OS face in stamp
 
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Shark symbolification of generated code



Shark provides no infrastructure for this. JIT code isn't listed as a header by the dynamic linker so Shark doesn't even know where to look for symbol information. The profile will show the addresses of the executed JIT code, but there are a few potential problems. If the JIT doesn't preserve the frame pointer, the backtrace will be useless after the top frame. Even with that in place, Shark collects symbol information at the end of the sampling. This is to avoid the performance impact of doing symbol lookups during the sampling. If the JIT reuses the same block of memory for multiple JIT fragments, then Shark has no idea which code fragment was JIT'd to a given address when the sample was recorded. The JIT would need to keep track of every JIT code fragment generated, the original source it came from, and when the code fragment was generated.
Thats what mono provides.

The only way this would be possible would be to either:

- Have a code cache that never evicts. Provide a function to map from JIT address to source address/information. Have us add support for calling that function to Shark.
That would work for me :)
I think adding this would be great and extremely useful.

Best regards,
Joachim Ante
_______________________________________________
Do not post admin requests to the list. They will be ignored.
PerfOptimization-dev mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/perfoptimization-dev/email@hidden

This email sent to email@hidden
References: 
 >Shark symbolification of generated code (From: Joachim Ante <email@hidden>)
 >Re: Shark symbolification of generated code (From: Rick Altherr <email@hidden>)



Visit the Apple Store online or at retail locations.
1-800-MY-APPLE

Contact Apple | Terms of Use | Privacy Policy

Copyright © 2007 Apple Inc. All rights reserved.