Call Stack View

The call stack view is used to present call stacks with a depth greater than one. If the selected call stack depth is Full, then all call stacks are presented at their full depth. Otherwise (call stack depth is two or higher), all call stacks that have a depth of at least the selected depth are presented, and the call stacks are truncated at the selected stack depth. If a stack is truncated, an entry named [Truncated] will be added at the bottom of the call stack.

Sort Stacks By

The Sort stacks by field is used to define the order of the call stacks. Below is a list of all the possible options; however, the available options depend on the selected field set.

The options are:

      Allocs/sec (or Allocs)
Shows the stacks first that have the most allocations (per second) between snapshots.

      Bytes/sec (or Alloced bytes)
Shows the stacks first that have the most allocated bytes (per second) in between snapshots.

      Live instances
Shows the stacks first that have the most live instances.

      New live instances
Shows the stacks first that have the most new live instances.

      Disposed instances
Shows the stacks first that have the most disposed instances.

      Undisposed instances
Shows the stacks first that have the most undisposed instances.

      Memory leak instances
Shows the stacks first that have the most memory leak instances.

      Allocs in gen #0 (or Allocs/sec in gen #0)
Allocs in gen #1 (or Allocs/sec in gen #1)
Allocs in gen #2 (or Allocs/sec in gen #2)
Allocs in large heap (or Allocs/sec in large heap)
Shows the stacks first that have the most allocations in the specified heap.

      Unreachable instances
Shows the stacks first that have the highest number of unreachable instances.

Hide stacks with zero sort value

If this checkbox is checked, then all call stacks for which the sort value is zero will be hidden.

Call Stack

The Call stack group box is used to present a single call stack. The text box to the right of the label can be used to select which stack to show, or it can be selected using the up-down control.

If source information is available for a method in the call stacks list, then a symbol () will be shown to the left of the method. If running under Visual Studio the source can be shown by double-clicking the method or by selecting the Show source command.

To the right of the allocation call stack, an info panel is used to present information about the instances allocated by the stack. The fields presented include:

      Live instances

      New live instances

      Allocs/sec (or Allocs)

      Bytes/sec (or Alloced bytes)

      Live bytes

      New live bytes

      Disposed instances

      Delta undisposed instances

      Allocs in gen #0 (or Allocs/sec in gen #0)
Allocs in gen #1 (or Allocs/sec in gen #1)
Allocs in gen #2 (or Allocs/sec in gen #2)
Allocs in large heap (or Allocs/sec in large heap)

      Unreachable instances

      Memory leak instances

Each field corresponds to one of the columns presented under the Types/Resources page, except New live bytes. New live bytes is the number of bytes used by new live instances, and it is only presented for call stacks and root paths.

If the call stack has created any unmanaged resource instances, then the creation context is indicated with the corresponding symbol in the info panel as well. For more information, see Creation Context.

The actual fields included in the info panel and the way they are presented depend on the selected field set and whether dispose and heap utilization tracking is enabled.

 

 

.NET Memory Profiler User Manual

© Copyright 2002-2008. SciTech Software AB.

For information about .NET Memory Profiler, see the product site at http://memprofiler.com

.NET Memory Profiler is developed by SciTech Software AB