We recommend using Visual Studio 2017

Call Tree View - .NET Memory Sampling Data

 

The new home for Visual Studio documentation is Visual Studio 2017 Documentation on docs.microsoft.com.

The latest version of this topic can be found at Call Tree View - .NET Memory Sampling Data.

The Call Tree view displays the function execution paths that were traversed in the profiled application. The root of the tree is the entry point into the application or the component. Each function node lists all the functions that it called and the .NET memory allocation data about those function calls.

The values in the Call Tree view are for the function instances that were called by the parent function in the call tree. Percentage values are calculated by comparing the function instance value to the total number or size of allocations in the profiling run.

The Call Tree view can expand and highlight the execution path of the process or function that created the largest or most memory objects. To display the most active path, right-click the process or function, and then click Expand Hot Path.

Each process in the profiling run is displayed as a root node. To set the starting node of the Call Tree view to a different node, right-click the node that you want to set as the start node and select Set Root.

When you set the root node, you eliminate all other entries from the view except the subtree of the selected node. You can reset the root node back to the node that you were viewing; right-click in the Call Tree View window and select Reset Root.

ColumnDescription
Process IDThe process ID (PID) of the profiling run.
Process NameThe name of the process.
Module NameThe name of the module that contains the function.
Module PathThe path of the module that contains the function.
Source FileThe source file that contains the definition for this function.
Function NameThe fully qualified name of the function.
Function Line NumberThe line number of the start of this function in the source file.
Function AddressThe address of the function.
LevelThe depth of the function in the call tree.
Inclusive AllocationsThe number of objects that were allocated by the instances of this function that were called by the parent function in the call tree. This number includes allocations that were made by child functions.
Inclusive Allocations %The percentage of all objects that were created in the profiling run that were inclusive allocations of this function.
Exclusive AllocationsThe number of objects that were allocated by the instances of this function that were called by the parent function in the call tree. This number does not include allocations that were made by child functions.
Exclusive Allocations %The percentage of all objects that were created in the profiling run that were exclusive allocations of the function instances that were called by the parent function in the call tree.
Inclusive BytesThe number of bytes in memory that were allocated by the instances of this function that were called by the parent function in the call tree. This number includes allocations that were made by child functions.
Inclusive Bytes %The percentage of all bytes of memory that were allocated in the profiling run that were inclusive allocations of this function.
Exclusive BytesThe number of bytes in memory that were allocated by the instances of this function that were called by the parent function in the call tree. This number does not include allocations that were made by child functions.
Exclusive Bytes %The percentage of all bytes of memory that were allocated in the profiling run that were exclusive allocations of this function.

Call Tree View - Instrumentation
Call Tree View
Call Tree View

Show: