Which Java profiler is better: JProfiler or YourKit? [closed]
Asked Answered
S

21

62

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.

Softshoe answered 2/10, 2008 at 18:2 Comment(1)
Have a look at jvisualvm in Java 6 u 10, which may be an initial option for the individual developer before bringing out the big profiler hammers.Pulmonic
P
38

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.

Peristome answered 2/10, 2008 at 20:32 Comment(1)
Be very careful if you purchase YourKit. One license was purchased by our account and she entered her email. They would not let the programmer is was purchased for use it because it could only be used by the purchaser. Another license was used by a developer in Lithuania who worked in Ukraine over the summer. They revoked his license for being used in 2 countries. Be very carefulDesuetude
C
18

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

Chartism answered 2/10, 2008 at 18:20 Comment(3)
For "general purpose" profiling, jvisualvm is great. no extra building or setup or anything, just attach and go. once you find something, you might need to go to one of these other apps to get real in depth coverage, though.Boarhound
What's the difference between jvisualvm and VisualVM?Ledda
@raffian: None, I think. jvisualvm is just the name of the binary.Fauteuil
L
17

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.

Luncheonette answered 20/5, 2010 at 14:56 Comment(1)
Not sure if it was possible in 2010, YourKit 12 has tracing feature in addition to sampling, which does the job. Personally it is superior than VisualVM because it analyzes time spent in runtime generated objects like anotation based myBatis mappersHalbert
M
9

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.

Marotta answered 3/10, 2008 at 4:32 Comment(0)
V
9

None of the tools other than JXInsight perform real database transaction analysis:

http://www.jinspired.com/products/jxinsight/concurrency.html http://www.jinspired.com/products/jxinsight/olapvsoltp.html

JXInsight's Probes technology is also the only one that could even run in production considering that we out perform netbeans profiler by 20x and yourkit 100x in SPECjvm2008 benchmarks.

http://blog.jinspired.com/?p=272

I am the architect of JXInsight so of course I am completely biased but at the same time I am probably more qualified than most in the Java industry to make such a claim since I have devoted the last 8 years to performance analysis for some of the most demanding of Java/J2EE application in production.

I should be point out that JXInsight is designed for software performance engineers and not just for the occasional adhoc profiling session. We have more than 4000+ system properties to configure the runtime and 600+ technology extensions libraries so it might be overkill unless one has a complex problem to solve and/or using the same tool across development, test and production is paramount.

Kind regards,

William

Vietnam answered 20/10, 2008 at 11:19 Comment(0)
J
8

With Java 7 Update 40, Oracle included Java mission control (originally part of the JRockit JDK) - a very powerful performance tuning tool which is able to compete with yourkit/jprofiler.

Take a look and be surprised.

Jea answered 3/11, 2013 at 22:45 Comment(0)
C
6

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.

Chimborazo answered 15/11, 2009 at 11:20 Comment(0)
D
5

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

Dermatoplasty answered 12/9, 2009 at 2:48 Comment(0)
K
3

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.

Kowalewski answered 2/10, 2008 at 20:18 Comment(0)
I
1

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

Intergrade answered 2/10, 2008 at 18:41 Comment(0)
L
1

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.

Lolanthe answered 2/10, 2008 at 20:26 Comment(0)
P
1

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.

Petigny answered 2/10, 2008 at 22:2 Comment(0)
T
1

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)

Talaria answered 3/10, 2008 at 3:49 Comment(0)
T
1

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

Tricolor answered 3/10, 2008 at 19:2 Comment(0)
P
1

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.

Pod answered 10/10, 2008 at 15:15 Comment(0)
T
0

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.

Tufa answered 2/10, 2008 at 18:58 Comment(1)
I've used yourkit on 1.4.2. it supports it BUT NOT QUITE SO WELL as 1.5.xPetigny
P
0

+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.

Petigny answered 2/10, 2008 at 21:49 Comment(2)
It is "jprofiler or yourkit" comparison. How can you vote for yourkit while as you said you are not familiar with jprofiler?Landaulet
@Landaulet : I said that I hadn't used JProfiler for quite some time (I didn't say that I never used it). At the time I made this comment, I had read several reviews comparing both the profilers.Petigny
R
0

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.

Rustice answered 2/10, 2008 at 22:15 Comment(0)
L
0

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

Libra answered 14/6, 2009 at 10:30 Comment(0)
M
0

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.

Malposition answered 1/9, 2009 at 16:7 Comment(0)
L
0

Definitly YourKit. It is the most intuitiv and stable!

Lit answered 13/1, 2014 at 7:55 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.