The instance graph is presented as a directed graph, where each instance and root is represented as a node, and the references between the instances are represented by directed edges. The table below presents the symbols that are used to present different types of instances and roots.
|
|
Selected instance |
|
|
Shortest root-path instance |
|
|
Reachable shortest root-path instance |
|
|
Non-shortest root-path instance |
|
|
Reachable non-shortest root-path instance |
|
|
Held instance |
|
|
Reachable instance |
|
|
Referrer instance |
|
|
Held referrer instance |
|
|
Reachable referrer instance |
|
|
Root |
The symbols can also be emphasized by adding an outline to the graph elements.
|
|
Primary item |
|
|
Secondary item |
|
|
Highlighted path |
Large Instance Graph Reduction
An instance graph can easily become much larger than can be conveniently presented visually. To avoid presenting too large graphs, .NET Memory Profiler will reduce the graph by combining groups of instances and roots into single graph nodes. The profiler tries to select groups so that the overall structure of the graph is affected as little as possible. The example below shows how instances are combined in a graph that contains a long linked list:

Original instance graph

Instance graph with combined
instances
Combined instances in the graph are indicated by using the following three symbols:
|
|
Indicates that instances have been combined horizontally. All instances have the same shortest-path distance to the selected instance. |
|
|
Indicates that instances have been combined vertically. All instances have different shortest-path distance to the selected instance. |
|
|
Indicates that instances have been combined horizontally and vertically. |
Combined instances can be expanded by using the Expand command that is available in the popup window and right-click menu of the combined instances and combined references. The expand options depend on how the instances and references have been combined. Typically they include options for expanding a specific type, a field, or just a number of instances.