Accepted answer

If you can, use jvisualvm in the Sun Java 6 JDK (IBM too). It works out of the box and can answer many of the initial questions.

Note that on Windows you need to invoke jvisualvm with the same Java binary as the program you want to investigate for best results.

(visualvm is a stand-alone subset of the Netbeans profiler)


The Eclipse Memory Analyser has been helping me a lot recently.


If you are looking for a IBM JDK equivalent for visualvm, try the IBM Java Health Center: It has some decent profiling capabilities, and is rather fast.


I've also used the Netbeans profiler which is pretty good. It's pretty easy to set it up to profile your Eclipse project while it is running in Eclipse. You don't need to open the project in Netbeans.


I found JProfiler (commercial) to be really helpful. It has Eclipse integration, although it is not an Eclipse plugin per sa', so you can very easily invoke a profiler instead of a regular execution session. It had very good bottleneck analysis and you can find-tune the settings to lower the overheads of the profiler itself. Highly recommended.


YourKit is an excellent commercial profiler that has good Eclipse integration.


In my experience, TPTP is something to run away from as fast as possible. It's a horribly overengineered mess, almost impossible to get to work, badly documented, and slow as molasses.

I'm not aware of any good and free profiling plugins for eclipse. But then, does it really have to be an eclipse plugin? VisualVM comes with the JDK since Java 6u7, is fast and easy to use. It may not be the most feature-rich of profilers, but has been sufficient for me.

Related Query

More Query from same tag