|Important||This document may not represent best practices for current development, links to downloads and other resources may no longer be valid. Current recommended version can be found here.|
Performance Report Overview
After a performance session ends, the performance data gathered during profiling is saved in a performance report. A performance report allows you to view and analyze application performance problems.
The performance report contains sensitive information such as the computer name, the version of the operating system, file paths, memory information, and other computer setup information. You should maintain strict control over the distribution of the report either in its native format, .vsp, or when exported to a .csv or an .xml file.
If event tracing data is collected as part of the performance session, additional information might appear in the event tracing log (.etl) file. This information includes your domain and user name; therefore, you should maintain strict control over the distribution of the log file.
A performance report has the following six views:
By default, a performance report is displayed in the Summary view. This view is a starting point in your investigation to determine performance issues. From each data point in the Summary view, you can move to more detailed views by right-clicking the function or module name. For more information, see.
The Functions view lists functions called during profiling. Functions are grouped by the module they are in. You can sort the data by clicking a column name. Additional columns can be added to the view. For more information, see. For more information, see .
The Caller/Callee view shows the called function and functions that were called before and after it. This view is divided into three distinct parts. You can select a different function by double-clicking any function in the before or after list to make it the called function.
Call Tree View
The Call Tree view is similar to the Call Stack window found while debugging an application. The Call Tree view displays information about function names, allocations, number of calls, and elapsed times. In this view, you can drill into a specific call to analyze performance impact.
The Allocation view lists information about the function name and type of allocation, number of instances, total bytes allocated, and percent of total bytes. Additional columns can be added to the view. You can sort the data by clicking column names. For more information, see.
Objects Lifetime View
The Object Lifetime view lists total instances of each type and a generation bucket that lists the number of generations that an instance of a type lived. For more information, see.