Fully featured low overhead profiler for Java EE and Java SE platforms.
Performance monitoring and profiling of Jenkins, TeamCity, Gradle, Maven, Ant, JUnit and TestNG.
Easy to use performance and memory profiler for .NET framework.

Comparing snapshots and small usability feature

Moderators: Vladimir Kondratyev, Anton Katilin

Comparing snapshots and small usability feature

Postby kuzmeech » Tue Jan 25, 2005 9:41 am

Dear Authors,

Thanks again for doing a great job on YourKit and answering/implementing suggestions promptly. It's a real fun to work with you!

Preface - we have a situation: two branches in one of which we tune performance. We have a need to compare snapshots of "before" and "after" for the same operation to see what was the main reason of change.

It would be very nice to have a feature of "comparing two CPU snapshots" and show differences. This feature exists in JProfiler but (AFAIK) it has a limitation: It's only possible to compare snapshots within the same profiling session.

I wonder what could be the reason for such a limitation.

Also I see that YourKit misses "compare snapshots" feature completely. I know that it's a hefty piece to develop, but it would be very nice to have it some time in the future :).

For the moment I miss CPU but maybe someone misses Allocation snapshot compare?
kuzmeech
 
Posts: 7
Joined: Tue Dec 21, 2004 1:48 pm
Location: St.Petersburg, Russia

Postby Vladimir Kondratyev » Tue Jan 25, 2005 10:03 am

You can compare two memory snapshots of the same application "run". Please take a look at "File | Compare snapshot with.." or popup menu at snapshot tab.

Regarding CPU snapshots:
it's not possible to do yet. The main reason is that we are not completely understanding how it should work, i.e. what data should be shown. If you have any ideas prease share them with us.
Vladimir Kondratyev
 
Posts: 1519
Joined: Tue Aug 10, 2004 7:52 pm
Location: Düsseldorf, Germany

Postby kuzmeech » Tue Jan 25, 2005 8:43 pm

I guess the result of comparison is the result of intersecting two trees.
Nodes equality considered by Class name [+ Method]

We're comparing primary snapshot with secondary snapshot.

Result is a tree of differences with following cases:
- node existed at the same place, remember change in execution time, calls count
- calls didn't exist (loss in performance)
- calls that have gone (gain in performance)

Resulting view can resemble typical CPU snapshot (collapsable/expandable) and will be showing primary snapshot with "difference tree" applied. A picture how to get secondary snapshot by changing primary snapshot.

- switchable on/off layer of existed calls (colour highlighten to show time gained/lost - the bigger difference - the deeper hue of red or green)

- switchable on/off layer of calls that have gone (name shown on pale green background, "minus" sign in special column)

- switchable on/off layer of calls that have appeared (name shown on pale red background, "plus" sign in special column)

By default all layers are shown.
kuzmeech
 
Posts: 7
Joined: Tue Dec 21, 2004 1:48 pm
Location: St.Petersburg, Russia

Postby nirchattop » Mon Feb 07, 2005 10:06 pm

I don't see any API offered for CPU snapshot either. This would have helped us to extract necessary information at (e.g. at an object or method level) and extend to compare between two different snapshots for a specific scenario. Can we expect to have an api for snapshot anytime soon.


Thanks,
Nirmalya
nirchattop
 
Posts: 5
Joined: Wed Feb 02, 2005 9:56 pm
Location: Stamford

Postby Vladimir Kondratyev » Tue Feb 08, 2005 6:57 am

API will be available in the version next after 4.0.

BTW, what information would you like to extract from CPU snapshot? We are gathering reqirement for future API, so your thoughts are welcome.

Regards,
Vladimir
Vladimir Kondratyev
 
Posts: 1519
Joined: Tue Aug 10, 2004 7:52 pm
Location: Düsseldorf, Germany


Return to Java Profiler

Who is online

Users browsing this forum: Google [Bot] and 1 guest

cron

YourKit uses cookies and other tracking technologies to improve your browsing experience on our website, to show you personalized content and targeted ads, to analyze our website traffic, and to understand where our visitors are coming from.

By browsing our website, you consent to our use of cookies and other tracking technologies in accordance with the Privacy Policy.