Skip to main content

Which Java profiler is better: JProfiler or YourKit?


Which profiler is better for general purpose profiling and heap analysis? 90% of our apps are standalone command line programs with substantial database and numeric processing. The other 10% are webapps/servlet container apps (with very little JSP and NO SCRIPLETS!). Target user would be Sr Software Engineer with 5-10 years of industry experience. We need support only for Sun JDK 5 and.



As of writing this question (2008-10-02), JProfiler was at 5.1.4 and YourKit was 7.5. Looks like YourKit 8.0 will be released soon.


Source: Tips4allCCNA FINAL EXAM

Comments

  1. I've used both JProfiler 4 and YourKit 7.5, and YourKit wins hands down. It's so much less invasive than JProfile, in that I'll happy run production servers with the YourKit agent installed, which I would never do with JProfiler.

    Also, the analysis tool that comes with YourKit is more intuitive (in my opinion), making it easier to get the root cause of problems.

    ReplyDelete
  2. If you're on jdk >=1.6_07 you might also want to look at jvisualvm which comes bundled.

    ReplyDelete
  3. Having used both JProfiler and Yourkit recently I find that yourkit is far superior for memory problem analysis and strongly prefer jprofiler for performance analysis. Yourkit's memory analysis seems to be much easier and intuitive. For performance analysis on yourkit I have been unsuccessful in resolving any performance issue I have tried to resolve with yourkit. JProfiler shows more accurate and concise information for performance analysis with the exact number of method invocations and percent time spent in each method. I have yet to find this in yourkit. It seems yourkit just gives sampling information which is not accurate unless you are measuring thousands of invocations.

    ReplyDelete
  4. I've used JProbe, OptimizeIt, and YourKit all extensively and they're all capable tools. Of the 3, my all around favorite is YourKit.

    The one killer feature in JProbe is the ability to move from a perf snapshot to annotated source (with counts and timings). I found that to be exceptionally useful.

    ReplyDelete
  5. i've used yourkit and it is a very nice profiler, the best i've ever used in java (i've used a variety of others over the years). that being said, i've never used jprofiler, so i can't give a direct comparison.

    ReplyDelete
  6. For quick and dirty profiling of command-line programs, JIP works really well.

    ReplyDelete
  7. Been using JProfiler for years and very happy with it. IntelliJ seems to switch their recommendation back and forth between YourKit and JProfiler so I would guess their feature sets are similar. I believe they both have trial version.

    ReplyDelete
  8. DISCLAIMER : Alternate answer.

    they have various products for production monitoring/profiling UNLIKE other mostly development time tools : http://www.jinspired.com/products/jxinsight/
    This post on theserverside on JDBInsight : http://www.theserverside.com/news/thread.tss?thread_id=13488

    DISCLAIMER : I am NOT associated with this company at any level.

    ReplyDelete
  9. I have used YourKit. I have not used JProfiler. I have used OptimizeIt before. I have very good opinion about YourKit. It is very stable and good GUI and good feature list. One unique feature I have noticed is CPU profiling with and without wait time (like I/O wais) including.

    It is priced also very reasonably (about about $1100 for 5 licenses I think)

    ReplyDelete
  10. Yourkit
    It's low overhead, stable, easy to install on the JVM to be profiled (just one dll) and powerful.
    For analyzing heap dumps it's the only profiler that comes close to the Eclipse Memory Analyzer.

    ReplyDelete
  11. Definitely YourKit ... It was able to open 4 gigs heap dump with just 1g of heap used. While Jprofiler with same heap allocation crashed!

    ReplyDelete
  12. I have used both and my vote now is definitely JProfiler (in the current version 6) as it is easier to use and has a lot of useful additional features. In previous releases YourKit had some advantages with larger snaphots, but this is gone now.

    ReplyDelete
  13. I've only used JProfiler (and some JProbe). As far as I can tell, one limitation of YourKit is that they don't appear to support JDK 1.4.2. That's not an issue for many people, but it might be.

    ReplyDelete
  14. +1 for yourkit --- using 7.0 on dev boxes in windows
    not used JProfiler for a while -- cannot comment since they might have improved in the meantime.

    ReplyDelete
  15. Just as an aside, you may want to consider the Netbeans profiler -- it's pretty good. But I've not used either of the two you mentioned.

    ReplyDelete
  16. YourKit is great. You might also want to check out the profiler built into NetBeans--it's pretty cool.

    ReplyDelete
  17. I am using JProfiler and find it overall OK. It's "dynamical instrumentation" feature is terribly biased for small methods, though.

    ReplyDelete
  18. I am using the TPTP profiler. the best feature it has that this can be integrated very easily in Eclipse but the bad thing is that it makes the Eclipse run slower.

    ReplyDelete
  19. A new FREE Java profiler that is 10..100..1000 times more efficient than your standard code profiler and it looks great and renders visualizations very fast.

    http://www.jinspired.com/site/jxinsight-opus-1-0

    JXInsight/Opus is a highly efficient and scalable code level latency performance measurement solution with built-in measurement overhead management and automatic performance behavioral classification for rapidly identifying hotspots within Java applications. JXInsight/Opus can be used in development, test and production free of charge with no time limits.

    ReplyDelete

Post a Comment

Popular posts from this blog

[韓日関係] 首相含む大幅な内閣改造の可能性…早ければ来月10日ごろ=韓国

div not scrolling properly with slimScroll plugin

I am using the slimScroll plugin for jQuery by Piotr Rochala Which is a great plugin for nice scrollbars on most browsers but I am stuck because I am using it for a chat box and whenever the user appends new text to the boxit does scroll using the .scrollTop() method however the plugin's scrollbar doesnt scroll with it and when the user wants to look though the chat history it will start scrolling from near the top. I have made a quick demo of my situation http://jsfiddle.net/DY9CT/2/ Does anyone know how to solve this problem?

Why does this javascript based printing cause Safari to refresh the page?

The page I am working on has a javascript function executed to print parts of the page. For some reason, printing in Safari, causes the window to somehow update. I say somehow, because it does not really refresh as in reload the page, but rather it starts the "rendering" of the page from start, i.e. scroll to top, flash animations start from 0, and so forth. The effect is reproduced by this fiddle: http://jsfiddle.net/fYmnB/ Clicking the print button and finishing or cancelling a print in Safari causes the screen to "go white" for a sec, which in my real website manifests itself as something "like" a reload. While running print button with, let's say, Firefox, just opens and closes the print dialogue without affecting the fiddle page in any way. Is there something with my way of calling the browsers print method that causes this, or how can it be explained - and preferably, avoided? P.S.: On my real site the same occurs with Chrome. In the ex