Identify leak "point" in stack

Use this forum for questions on how to use .NET Memory Profiler and how to analyse memory usage.
Post Reply
oferc
Posts: 2
Joined: Thu Apr 06, 2006 12:54 pm

Identify leak "point" in stack

Post by oferc » Thu Apr 06, 2006 12:59 pm

I suspect a class (or actually set of classes), to be involved in memory retention.

The problem is that the logic of the calss splits into different routes, so I see many classes, and some have them have the suspected class in the call stack.

Is there a way to collect all instances were a certain class/method is in their call stack?

10x,

Ofer

Andreas Suurkuusk
Posts: 1029
Joined: Wed Mar 02, 2005 7:53 pm

Post by Andreas Suurkuusk » Fri Apr 07, 2006 7:05 am

Have you tried using the Call stacks/Method view? If you select a stack depth of 1, you will be able to see the instances that have been allocated by specific methods. Additionally, if you select "Include child allocations", you will see all instances that have the selected method in the allocation call stack.

Is this what you were asking for? Or did I misunderstand your question?
Best regards,

Andreas Suurkuusk
SciTech Software AB

oferc
Posts: 2
Joined: Thu Apr 06, 2006 12:54 pm

Post by oferc » Sun Apr 09, 2006 12:45 pm

10x, this seems to be the answer.

I have another question, now.

I'm inspecting an outlook plugin.
While the memory profiler "live bytes" line is more or less constant, the "mem usage" as shown in the task manager jumps quite rapidly, who this can be explained?

10x, again,

Ofer

Andreas Suurkuusk
Posts: 1029
Joined: Wed Mar 02, 2005 7:53 pm

Post by Andreas Suurkuusk » Mon Apr 10, 2006 4:41 pm

There are a lot of possible causes for "jumping" memory usage as shown by the Task manager. Outlook will probably allocate and release unmanaged memory when performing tasks. This memory will not be shown by Live bytes in the profiler, but it will be included in the memory presented by the Task manager. Additionally, the Task manager shows the physical memory currently allocated for a process. Windows may choose to reallocate physical memory between processes, cache etc., depending on the current system memory usage.
Best regards,

Andreas Suurkuusk
SciTech Software AB

Post Reply

Who is online

Users browsing this forum: No registered users and 27 guests