使用 CLR 4.0 NGEN PDB 支持
Xperf 和 Windows Performance Recorder (WPR) 都可以在启用公共语言运行时 (CLR) 4.0 本机映像生成器 (NGEN) PDB 支持的情况下运行。
注意:WPR 直接处理 CLR 符号,这样在配置和使用 NGEN 支持时便无需任何标记。
在 WPR 用户界面 (UI) 中启动录制时,会在保存的录制内容旁边生成 NGEN 程序数据库文件 (PDB)。 这些 PDB 对使用 NGEN 为托管方案创建的模块符号进行解码。 对于 Recording.etl,NGEN PDB 位于 Recording.etl.NGENPDB 文件夹中。
结合使用 NGEN 支持和 WPR
建议在运行 WPR 之前进行以下设置并启用 NGEN 支持:
- (可选,但推荐)将 SymCache 路径环境变量设置为本地目录
结合使用 NGEN 支持和 Xperf
若要将 NGEN 支持与 Xperf 配合使用,请执行以下操作:
在提升的命令提示符下,键入以下命令:
set _NT_SYMBOL_PATH=srv*C:\Symbols.NGEN;srv*https://msdl.microsoft.com/download/symbols
键入以下内容以启动内核会话:
xperf -on Base -stackwalk Profile -f kernel.etl
键入以下内容以启动 CLR 运行时会话记录:
xperf -start ClrSession -on ClrAll:0x98:5 -f clr.etl -buffersize 128 -minbuffers 256 -maxbuffers 512
运行方案。
键入以下内容以启动 CLR 断开会话:
xperf -start ClrRundownSession -on ClrAll:0x118:5+a669021c-c450-4609-a035-5af59af4df18:0x118:5 -f clr_DCend.etl -buffersize 128 -minbuffers 256 -maxbuffers 512
键入以下内容以允许通过将超时设置为 15 来完成 CLR 断开:
timeout /t 15
键入以下内容以停止 CLR 运行时会话、CLR 断开会话和内核会话,并将它们合并到单个文件中:
xperf -stop ClrSession ClrRundownSession -stop -d recording.etl
解码启用了 CLR 4.0 NGEN PDB 支持的录制
在提升的命令提示符下,键入以下命令:
set _NT_SYMBOL_PATH=srv*C:\Symbols.NGEN;srv*https://msdl.microsoft.com/download/symbols
传输启用了 CLR 4.0 NGEN PDB 支持的录制
若要传输启用了 CLR 4.0 NGEN PDB 支持的录制,请在符号路径中包含以下内容:
srv*C:\Symbols.NGEN
若要将录制内容传输到另一台计算机,请确保同时传输 Recording.etl 和整个文件夹 C:\Symbols.NGEN(及其子文件夹)。