I blogged several month ago about Memory Analyzer allowing to profile the memory of a running JVM. I also asked about time performances in this old post … and I give up the idea to profile my plugins time performances …
This week one colleague asked me about the way Eclipse manages class loading. In fact he was trying to set up JIP profiler in order to profile his Eclipse plugins. The class loading question comes from the fact that “JIP adds aspects to every method of every class that you want to profile” using byte code injection.
After investigations we concluded that it’s impossible to use this profiler to profile Eclipse Plugins. The fact that Eclipse uses a dedicated class loader for each plugin and the fact that it’s impossible to tell JIP to only profile a given subset of classess of a given JVM result in the famous NoClassDefFoundError. More informations available here.
Then I remembered that Markus Kohler told me here to have a look on Yourkit profiler. After a quick look on the available features I am not sure to be able to profile plugins with this profiler … ??
We are now setting up TPTP in order to profile our Eclipse plugins. Next round in the coming weeks …
Furthermore we would be interested in any experiences about plugin profiling.
Manu