C++ 生成见解工具在 Visual Studio 2019 和更高版本中可用。 若要查看此版本对应的文档,请将本文的 Visual Studio“版本”选择器控件设置为“Visual Studio 2019”。 它位于此页面上目录表的顶部。
本文列出并介绍 vcperf.exe
中可用的命令以及如何使用它们。
用于开始跟踪和停止跟踪的命令
重要
除非指定/noadmin
,否则以下命令需要管理权限。
选项 | 参数和描述 |
---|---|
/start |
|
在给定的会话名称下启动跟踪。 /noadmin 选项在无管理员权限的情况下运行vcperf.exe,并忽略/nocpusampling 选项。 在无管理员权限的情况下运行 vcperf 时,给定计算机上可以有多个活动会话。 /nocpusampling 选项指定vcperf.exe不收集 CPU 样本。 它会阻止在 Windows 性能分析器中使用“CPU 使用率”(采样)视图,会使收集的跟踪显得更小。 /level1 、/level2 或/level3 选项指定要收集的 MSVC 事件,以提高信息级别。 级别 3 包括所有事件。 级别 2 包括除模板实例化事件之外的所有事件。 级别 1 包括除模板实例化、函数和文件事件之外的所有事件。 如果未指定,默认选择/level2 。 vcperf.exe启动跟踪后,会立即返回。 跟踪为计算机上运行的所有进程收集系统范围内的事件。 这意味着,无需在与用于运行vcperf.exe相同的命令提示符窗口中生成项目。 例如,可以在 Visual Studio 中生成项目。 |
|
/stop |
(1) [/templates ] <sessionName> <outputFile.etl> (2) [ /templates ] <sessionName> /timetrace <outputFile.json> |
停止由给定会话名称标识的跟踪。 对跟踪运行后处理步骤,以生成由<outputFile> 参数指定的文件。 /templates 选项包括文件中的模板实例化事件。 (1) 在 Windows 性能分析器 (WPA) 中生成可查看的文件。 输出文件需要 .etl 扩展名。(2) 在 Microsoft Edge 跟踪查看器 ( edge://tracing ) 中生成可查看的文件。 输出文件需要.json 扩展名。 |
|
/stopnoanalyze |
<sessionName> <rawOutputFile.etl> |
停止由给定会话名称标识的跟踪,并将原始的未处理数据写入指定的输出文件中。 生成的文件不用于在 WPA 中查看。 /stop 命令中涉及的后处理步骤有时会很长。 可以使用 /stopnoanalyze 命令延迟此后处理步骤。 准备好在 Windows 性能分析器或 Microsoft Edge 跟踪查看器中生成可查看的文件时,请使用/analyze 命令。 |
杂项命令
选项 | 参数和描述 |
---|---|
/analyze |
(1) [/templates ] <rawInputFile.etl> <outputFile.etl> (2) [ /templates ] <rawInputFile.etl> /timetrace <outputFile.json> |
接受 /stopnoanalyze 命令生成的原始跟踪文件。 对此跟踪运行后处理步骤,以生成由<outputFile> 参数指定的文件。 /templates 选项包括文件中的模板实例化事件。 (1) 在 Windows 性能分析器 (WPA) 中生成可查看的文件。 输出文件需要 .etl 扩展名。 (2) 在 Microsoft Edge 跟踪查看器 ( edge://tracing ) 中生成可查看的文件。 输出文件需要.json 扩展名。 |
另请参阅
C++ Build Insights 入门
教程:Windows 性能分析器基础知识
参考:Windows 性能分析器视图
Windows Performance Analyzer