性能会话概述
更新:2007 年 11 月
本概述介绍分析的基础知识。对性能工作还不太了解的开发人员将看到 Visual Studio Team System Developer Edition 分析工具 如何帮助他们快速提高工作效率以及提高他们的代码性能。在分析方面有经验的开发人员可以获得特定的 分析工具 功能和进程的概述。
Visual Studio Team System Developer Edition 分析工具 有助于您发现源代码中的性能问题以及比较可能的解决方案的性能。分析工具 向导和默认设置可以让您立即发现许多性能问题。分析工具 的功能和选项提供对分析过程的准确控制,这包括精确定位代码部分、收集块级执行时间信息以及在数据中包括其他处理器和系统性能数据。
使用分析工具的基本过程包括以下步骤:
通过指定收集方法和要收集的数据来配置性能会话。
通过在性能会话中运行应用程序来收集分析数据。
分析数据以发现性能问题。
修改 Visual Studio IDE 中的代码以提高代码的应用程序性能。
收集已更改代码的分析数据,并比较原始数据和已更改数据的分析数据。
生成一个记录性能改进的报告。
若要处理由分析提供的信息,您应该有要分析的二进制文件和 Windows 操作系统的二进制文件的符号信息。
配置性能会话
若要配置分析会话,请选择要使用的分析方法和要收集的数据。分析工具“性能向导”可以引导您完成基本的配置,并且您还可以使用“性能会话”属性页添加更多选项。
分析方法包括取样、跟踪和内存分配。
数据值包括时间、处理器和操作系统性能计数器以及应用程序事件,例如页面错误和内核转换。
可以将 Visual Studio 项目中的性能会话配置为项目解决方案的一部分,或者通过 Visual Studio IDE 分析任意二进制文件。可以在“性能会话”属性页中指定会话属性,也可以使用分析向导。
收集分析数据
从“性能资源管理器”启动分析数据的收集。可以暂停和继续分析以限制收集的数据量。还可以附加到已经在运行的进程。
一旦应用程序启动,“数据收集控件”窗口就会显示在 Visual Studio IDE 中。在“数据收集控件”窗口中,您可以通过暂停和继续收集进程来分析应用程序的特定部分。也可以使用“数据收集控件”窗口在收集的数据中插入标记。标记是在分析视图中显示的用户定义的数据点,可用于筛选分析数据。
当目标应用程序关闭时,Visual Studio Team System 分析工具会生成一个分析数据文件 (*.vsp),并在 Visual Studio IDE 中显示“摘要报告”视图。
分析数据并发现性能问题
当您结束分析运行时,将分析数据,并在 分析工具“性能报告”视图窗口中显示摘要。为目标应用程序的调用堆栈和各个函数收集分析数据。“报告”视图显示应用程序的进程、线程、模块、函数和源代码行的数据范围的性能分析。函数的分析数据值包括以下值:
函数和该函数调用的子函数所用的总时间(非独占值)
仅执行函数中的代码所用的时间(独占值)
通过十二个以上的不同视图,可以最有效的方式对分析数据进行分析。通过视图自定义,可以对数据进行筛选和排序,找到可能导致性能问题的函数。通过热路径筛选可以在“调用关系树”和“模块”视图中直接突出显示最活跃的路径。
修改应用程序代码
识别一个或多个相关的性能问题之后,可以使用 Visual Studio IDE 修改代码,然后收集所做更改的分析数据。
再次收集分析数据并比较两次分析运行的数据
“分析工具比较报告”视图显示两个选定的分析数据文件之间在模块、函数或代码行性能方面的不同。您可以指定要比较的分析数据值,并且可以在“比较”视图与各个文件的视图之间进行切换。
生成结果报告
您可以将任何性能报告视图的行粘贴到电子邮件和电子表格中,并且可以生成包含一个或多个视图的数据的报告。