0

xperfでシンボルを取得するにリストされているものと同様のバッチファイルを使用して、Xperfでスタックウォークを実行しようとしています。

XperfViewを起動し、シンボルパスが正しいことを確認してから、シンボルをロードします。しかし、「CPUサンプリングbyCPU」グラフの選択した部分(5秒程度)でサマリーテーブルを開こうとすると、パフォーマンスアナライザが長時間(数時間)ハング(応答しない)します。

昨夜実行したままにして、今朝来たとき、サマリーテーブルが最終的に読み込まれ、期待どおりの結果が含まれていました...シンボルをC:\ symbolにキャッシュするために、最初のダウンロードを実行しているだけだと思っていましたが、今朝の繰り返しテストにも同様の問題があります(この時点で1時間15分ハングします)。

4

3 に答える 3

3

WPT (xperf、xperfview、WPA) には、dbghelp.dll および symsrv.dll が同梱されていません。つまり、パスにあるものに応じて、次のようになる可能性があります。

  1. 高速シンボル読み込み
  2. 最大 150 倍の時間がかかるシンボルの読み込み
  3. シンボルの読み込みはまったくありません。

解決策は、これらの DLL の正常なバージョンを WPT インストール ディレクトリにコピーすることです。詳細については、この投稿を参照してください: http://randomascii.wordpress.com/2012/10/04/xperf-symbol-loading-pitfalls/

于 2013-12-12T03:38:44.607 に答える
1

Bruce Dawsonは彼の投稿で、現在の SDK に同梱されている WPT の dbghelp.dll および/または symsrv.dll に問題があると推測しています。彼は、それらを Visual Studio 2010 または Debugging Tools for Windows (つまり WinDbg) のものに置き換えることを提案しています。私のために働いた...

于 2013-03-15T15:11:49.333 に答える
0

このようなsymcacheを設定しましたか

SRV*c:\dev\symbols*http://msdl.microsoft.com/download/symbols

symcache はシンボルをローカルにキャッシュします。私は通常_NT_SYMBOL_PATH 、上記の情報を含む環境変数を持っています。

HTH

于 2010-07-27T14:55:16.180 に答える