Retained size column in object list

Questions about YourKit Java Profiler
Post Reply
vgritsenko
Posts: 26
Joined: Mon Jan 24, 2005 7:29 pm

Retained size column in object list

Post by vgritsenko »

Currently retained size column is featured only in "All Objects", "New Objects" views. I'd suggest to add this column, or provide a way to display this column, for views with objects list ("Instances by class...", "Selected objects", etc).

This would make it incredibly easier to find an offender from the list of hundreds of innocent objects. Currently the only option is to go through each instance and view "Quick info", which is very tiresome, to say the least.
Vladimir Kondratyev
Posts: 1624
Joined: Tue Aug 10, 2004 7:52 pm

Post by Vladimir Kondratyev »

Old versions of profiler (2.0, 2.5, etc) had "retained" size everywhere. Most of the users complained that everything is slow, that seeing running percents when expanding tree node is annoying. That's why we dropped "retained" size from all views excepting "Class tree".

If you want to see retained size of the object (selection, etc), just try to use Crlt+Q (View | Quick Info) action.
vgritsenko
Posts: 26
Joined: Mon Jan 24, 2005 7:29 pm

Post by vgritsenko »

Yes, that's what I said - one can use Quick Info.

But have you tried running Quick Info on 1500 objects in a row? I bet your fingers will tire, don't you think so?

I understand that if it is everywhere it will be slow (it's not amazingly fast now either), but can this be at least an option, when you already have a list of objects, calculate retained sizes for each one of them at a time?
Vladimir Kondratyev
Posts: 1624
Joined: Tue Aug 10, 2004 7:52 pm

Post by Vladimir Kondratyev »

But have you tried running Quick Info on 1500 objects in a row? I bet your fingers will tire, don't you think so?
Why don't you use "Class tree" here? This view alows to detect object with maximum retained size in a couple of clicks. Clas list should be used only to check whether instances of particular class present in a memory (the same as Ctrl+N action).
I understand that if it is everywhere it will be slow (it's not amazingly fast now either)
If you have performance problem with profiler please report them.
vgritsenko
Posts: 26
Joined: Mon Jan 24, 2005 7:29 pm

Post by vgritsenko »

Vladimir Kondratyev wrote:
But have you tried running Quick Info on 1500 objects in a row? I bet your fingers will tire, don't you think so?
Why don't you use "Class tree" here?
I do. But each line of it shows aggregated numbers for all objects of a class (and "class tree", "class list" going under "statistics" heading for a reason). Now, from all objects of a given class, I'd like to find one or two or three instances which took all the memory (while all of the others don't occupy much).

To make it clear, in my original suggestion I was talking about "object explorer". In there, there is no option to switch on "retained size" column, so one had to go through each one of the thousands of objects to find offending one. That's lots of clicks, takes lots of time.
This view allows to detect object with maximum retained size in a couple of clicks. Clas list should be used only to check whether instances of particular class present in a memory (the same as Ctrl+N action).
May be I'm missing something, but I don't see how to get information on particular object instance in class tree. Object explorer shows instances, class tree does not.
I understand that if it is everywhere it will be slow (it's not amazingly fast now either)
If you have performance problem with profiler please report them.
I had a snapshot from 512Mb JVM which occupied around 620Mb on a harddrive and required 1Gb of RAM to load (yjp.ini: vmargs=-Xmx1024M). YJP would not load it with vmargs=-Xmx900M.

I have 1Gb RAM on this box, and once this snapshot is loaded (and all other applications is killed), it took minutes to expand single "+" in class tree.

Is it expected behavior, or a performance problem?

Just a wild thought, can this be optimized with memory mapped files?
mathers
Posts: 3
Joined: Wed Mar 09, 2005 1:21 pm

Post by mathers »

Vladimir Kondratyev wrote:
But have you tried running Quick Info on 1500 objects in a row? I bet your fingers will tire, don't you think so?
Why don't you use "Class tree" here? This view alows to detect object with maximum retained size in a couple of clicks. Clas list should be used only to check whether instances of particular class present in a memory (the same as Ctrl+N action).
How? If a couple hundred instances exists from one class, then how is it possible to determine which one is the big one?



Ps. Sorry that I opened a new Thread before finding this.
Post Reply