Eclipse Plugins Profiling

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.


This entry was posted in Uncategorized by Manuel. Bookmark the permalink.

4 thoughts on “Eclipse Plugins Profiling

  1. Hi Manu,

    I have experimented with the trial version of YourKit some time ago. It works very well with Eclipse plug-ins. What I liked best is that it is a lightweight and very responsive (swing) application, but still has great integration with Eclipse (i.e. show me the source for this method, etc.).

    Give it a shot, it’s worth it.


  2. We’re using YourKit to profile all of RSA, it should do what you need. I am yet to hear of anybody doing anything useful with TPTP.

  3. Pingback: Eclipse Plugin Profiling Part 2 « Manuel Selva’s Eclipse blog

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s