【问题标题】:Load Symbols Grayed Out Windows Performance Analyzer加载符号灰显 Windows 性能分析器
【发布时间】:2016-01-11 08:09:40
【问题描述】:

我正在学习本教程:

https://dzone.com/articles/diagnosing-native-memory-leaks

当我谈到关于加载符号的部分时,我不能,因为 Trace->load symbols 是灰色的。关于单击后符号是否未加载(这意味着符号路径设置不正确)有很多答案,但我没有看到按钮变灰。

我还通过使用 WinDbg 运行应用程序来仔细检查了我的符号路径。关于我的符号路径,我没有收到任何错误。我还可以在其他 etl 文件上加载符号。是否需要启用标志才能在此 etl 上加载符号?

为什么“加载符号”在 Windows 性能分析器中会显示为灰色?

我在 Windows 7 上在此路径上使用 WPT C:\Program Files (x86)\Windows Kits\10\Windows 性能工具包

我使用的命令和教程一样:

xperf -on PROC_THREAD+LOADER
xperf -start heapsession -heap -pids 1234 -stackwalk HeapAlloc+HeapRealloc

然后

xperf -stop heapsession -d C:\temp\heap.etl
xperf -d C:\temp\kernel.etl
xperf -merge C:\temp\heap.etl C:\temp\kernel.etl C:\temp\combined.etl

【问题讨论】:

  • 在 Perfview 中打开 ETL 并查看是否看到 KernelTraceControl/ImageID/DbgID_RSDS 事件。他们需要加载符号
  • @magicandre1981 我没有看到那些。如何让他们出现?
  • 您使用哪些窗口和 WPT 版本?你用过哪个 xperf 命令?
  • @magicandre1981 我更新了
  • 我发布了答案。

标签: debug-symbols etw


【解决方案1】:

好的,这是一个已知问题。 Windows 10 SDK/WPT 的 TH1 版本在 Windows 7 上被破坏。此版本错过了KernelTraceControl/ImageID/DbgID_RSDS 事件。

您应该使用Windows 8.1 WPT/SDK 或今天的released SDK for Windows 10 Build 10563,其中包含针对该问题的修复:

纠正了在 Windows 8 之前的操作系统上阻止跟踪捕获的问题 使用 xperf.exe 和 wpr.exe 发布。

【讨论】:

  • 很高兴听到这个消息。您现在使用哪个 WPT 版本?
  • 似乎已恢复。 10.0.16299.91 中存在相同的灰色问题
  • @0xC0DEFACE Build 10586 是唯一适用于 Windows 7 的 WPT。
  • @0xC0DEFACE 确保此版本运行良好。使用 Perfview 并在事件表中查找 KernelTraceControl/ImageID/DbgID_RSDS 事件
  • @0xC0DEFACE 也是,当您使用 **xperf -d ** 停止跟踪时会发生这种情况。 kernel.etl 没有符号数据事件。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-08-02
  • 2011-07-07
相关资源
最近更新 更多