BT

JProfiler 6.0 Supports Dynamic Instrumentation and Locking History Graphs

by Srini Penchikala on Dec 24, 2009 |

The latest version of JProfiler supports dynamic instrumentation, locking history graphs and exceptional method run analysis. The company behind JProfiler, ej-technologies, recently announced the release of version 6.0 of the java application profiling software. The tool also allows monitor profiling and thread dumps view.

Auto-tuning for dynamic instrumentation determines methods with disproportional overhead and suggests them for exclusion in the JProfiler GUI. Short-running methods that are called very frequently can distort the overall numbers, because the time required to measure those methods takes much longer than the actual method itself. During profiling, the new version notifies of such overhead hot spots in the status bar so the developers can focus on the methods that take longer times to run.

Exceptional method runs feature helps the developers analyze the slowest executions of selected methods in detail. These are the invocations of a method that take most time. Often, a method performs very similarly over a huge number of invocations, but sometimes it takes much longer. Looking at the call tree does not help in this case, since the regular invocations dominate the single slow invocation. Now, the developers can mark a method as an exceptional method in the call tree views or the method statistics view and the call tree will show the slowest invocations separately.

Other new features in the JProfiler 6 include:

Locking graphs:
The monitor analysis in JProfiler was extended with graphs that show the current locking situation and the history of all recorded locking situations. The current locking graph view shows all threads that are currently waiting or blocking on a monitor as well as those that hold a contended monitor. Deadlocks are visualized with red nodes and the tool tips show times and stack traces.

In the locking history graph the developers can record monitor events and navigate step by step through the recorded locking situations. A time line view puts the distribution of events into context and provides an alternative way of navigating to other monitor events.

Thread dumps view:
The new thread dumps view shows all call frames, not just the profiled classes. The developers can stay on the same thread and cycle through different thread dumps to see changes in the stack trace. This feature supports multiple thread dumps, and single threads or the entire thread dump can now be copied to the clipboard.

Monitor Profiling:
Since there can be a large amount of monitor events, you can mark certain threads or monitors as nodes of interest. A separate set of navigation buttons will then only step through events that involve at least one node of interest. Monitor events can be cumulated by selecting a region in the time line. Total blocking and waiting times as well as lists of stack traces are visible in the tool tip windows for the arrows in the locking graph. Monitor event recording can also be started and stopped with the JProfiler MBean or via the Controller API.

Method statistics view:
This view shows statistical data on the distribution of method execution times including a feature called the "outlier coefficient" that shows how strongly the slowest invocation deviates from the median time. In the lower part of the view, a graph shows the distribution of call times. Here, the y-axis has been set to a logarithmic display in order to show single outliers more clearly.

Tree Map Views:
Tree map view modes have been added to all views that show the call trees where the rectangles in the tree map are proportional to inherent time. You can mouse over rectangles to see the method information and zoom in to see a certain region in more detail. The stack trace information for the call tracer has also been added. At each trace in the call tracer, the current stack trace can be viewed in the lower window which makes it easier to assess the context of the selected trace.

For the java applications using Java SE version 5 or higher, the configuration of profiling can be done with a single VM parameter called "-agentpath". The new release supports changing profiling settings without restarting the profiled JVM for Java 6+ and loading snapshots from IDE integrations. The IDE integration support includes Netbeans 6.8 (with support for profiling Glassfish v3) and IntelliJ Idea 9. The profiling can be done with application servers like JBoss 5.1 and Oracle Weblogic 11g.

The latest release also supports profiling on two new platforms FreeBSD x86 and Linux PPC operating systems for both 32-bit and 64-bit JVMs.

Hello stranger!

You need to Register an InfoQ account or to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Tell us what you think

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Dynamic Instrumentation/Measurement by William Louth

For those less informed and interested in "dynamic profiling" JXInsight 5.5 was the first product to pioneer dynamic metering/measurement with its release of its production oriented Probes technology in early 2008.

www.jinspired.com/products/jxinsight/new-in-5.5...

We have continued to extend our innovation that is still being copied years after its introduction.

williamlouth.wordpress.com/2009/11/30/self-opti...

williamlouth.wordpress.com/2009/04/06/instrumen...

williamlouth.wordpress.com/2009/12/24/too-cheap...

Re: Dynamic Instrumentation/Measurement by john doe

I am not affiliated with any performance vendor, just a casual observer, and I have to say you, Louth, are really annoying. Whenever some competing vendor posts anything related to Java performance, you feel obliged to comment how great your product is and how you are inventor of everything and greater of them all. You so called 'inventions' are nothing more that common sense logical things anyone involved in performance problem domain, for a long enough period of time, would encounter if he was thinking about it in greater detail. You are not smarter than the others, nor better than the others. Your tactics of giving complex sounding names to common sense logical matters, can not and will not impress knowledgable developers.

So do us all a favor, you have good product, noone is denying it, but chill out, and stop hunting anyone who is competing with you in fare game.

Re: Dynamic Instrumentation/Measurement by William Louth

OK "john doe" then can you provide actual references to other tools in this space providing similar features ** before ** JXInsight introduced them (nearly 2 years ago) in particular "multi-resource metering" and "dynamic multi-strategy based measurement/metering". I believe we are the first product to apply activity based costing in an application performance management context.

I would not normally post on other vendors PR postings unless it is painfully obvious the company is repeatedly cloning features we pioneered/invented within a product I spend all my working time designing and developing. Is that your definition of a fare game? Double standards?

When I first entered the industry people were constantly bashing large companies such as Microsoft for ripping off innovations (or novel approaches) from smaller companies that could not grow because of this. Now it seems this bad practice is actively encouraged by the "john doe's" of today.

You so called 'inventions' are nothing more that common sense logical things anyone involved in performance problem domain, for a long enough period of time, would encounter if he was thinking about it in greater detail.


You know what you sound very like a vendor trying to justify cloning of features introduced by a competitor whilst not bothering to think about the problem domain yourself - just let others do it for you. Everything looks common sense and obvious once it has been discovered and/or related. The point is (or effort is in) discovering them.

giving complex sounding names to common sense logical matter


Then clearly you do not understand what has been designed and what is possible with our unique approach. But that is understandable because you do not have access to product documentation which explores this in greater detail than my personal blog.

will not impress knowledgable developers


I think you are very much wrong. What we find is that those that understand appreciate the technology are themselves pretty smart and knowledgeable. Granted we are targeting more than just developers - testing & architecture teams as well as operations.

Re: Dynamic Instrumentation/Measurement by john doe

Is that your definition of a fare game?

Since when there is something fair in life? 16k kids are dying each day from hunger, so let't not start the entire fair play thing ok.

You know what you sound very like a vendor trying to justify cloning of features introduced by a competitor whilst not bothering to think about the problem domain yourself - just let others do it for you.


Take my word for it, I am really not affiliated with any vendor what so ever. But if I was working in performance domain, or was about to start product for that market, you can bet I would first check out all competing products. Why not? I mean, let's be fair here, you, as you have been learning in life, gaining knowledge and techniques and so on, just like any other developer/engineer, have been ripping of knowledge from reasearch papers and books published by scientists from around the world. So basically, you, me and entire industry is based on ripping of the knowledge of scientists. So really let's not start applying double standards here ok.

Everything looks common sense and obvious once it has been discovered

Ok, whatever, I said what I had to say, if you believe you invented something its your right to do so. I have right and do think otherwise.

www.theregister.co.uk/2009/12/28/top_patent_app...

Re: Dynamic Instrumentation/Measurement by William Louth

Fair is definitely not using the plight of the poor & hungry to backup a weak argument in another context. You asked me to be fair in the context of this article and I showed this to be subject to different interpretation depending on which side of the cloning process you are on.

Look if you are in competition naturally you are looking around but copying someones work is not part of the process at least to me because I like to see beyond the current solution which I assume to be not optimal (Is this not what inventors do?) trying better to understand the problem that was being addressed and looking at alternative (not similar or exact copies) ways to better address it. Copying does not move things forward especially if inferior or not progressive which seems to be the case the vast majority of the time in this particular domain.

You want me and others to take you seriously whilst hiding behind such a name like a wuss. Cop on.

Re: Dynamic Instrumentation/Measurement by john doe

Fair is definitely not using the plight of the poor & hungry to backup a weak argument in another context.

You started complaining about fairness first, how you are on the so enough said.

copying someones work

Noone is copying your work because you are not owner of abstract principles/common sense logical matterns. If someone copied your actual bytecode, source code or whatever, that would be copying work. You do not have ownership of common sense principles, since each such principle has been thought about by many people before you. Speaking your language, don't you find it hypocritical that you are ripping research of many scientist and researchers whose publications you have read in the past, whose ideas you read and remebered, and as so happens, applied them in different context?

whilst hiding behind such a name like a wuss

Yes, by being anonymous coward everything I say is automatically false.

Re: Dynamic Instrumentation/Measurement by john doe


You started complaining about fairness first, how you are on the so enough said.

It should be: "You started complaining about fairness first, so enough said.".

Also, to mention again, I have nothing personal against you nor your product. I am not involved neither as user nor as competitor in your market, just pisses me off to see yoo constantly spamming both InfoQ and TSS how someone is stealing your 'inventions'.

You have great product, no question about it, just your PR campaign could use some improvement.

Re: Dynamic Instrumentation/Measurement by Matt Giacomini

copying someones work


If I could paste a picture here it would be of me rolling my eyes. Like John Doe I'm not in the performance space. And 'yes' your spam posts are annoying.

Like everything else, performance monitoring techniques, will over time become a commodity. Such is life, quit crying.

Re: Dynamic Instrumentation/Measurement by Christopher Churchill

Instead of Louth, your name should be uncouth neanderthal. How does that sound?

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

9 Discuss

Educational Content

General Feedback
Bugs
Advertising
Editorial
InfoQ.com and all content copyright © 2006-2013 C4Media Inc. InfoQ.com hosted at Contegix, the best ISP we've ever worked with.
Privacy policy
BT