1

x64 NGEN .NET 4.0 アセンブリでのシンボルの解決が機能しません。

詳細:

x64 構成の Visual Studio を使用してコンパイルしている .NET 4.0 コマンド ライン アセンブリがあります。コンパイルしたら、NGEN (64 ビット版) を実行します。

シンボルを解決しないコールスタック (-stackwalk プロファイルを使用) を分析する XPERF で失敗しました。ここから Perfmonitor を試しています: http://bcl.codeplex.com/releases/view/42784

私はこれらの手順を実行しましたが、コール スタックが解決されることを期待していました。

  • NGEN 化された x64 アプリを起動する
  • PerfMonitor 収集
  • パフォーマンス モニターのマージ
  • パフォーマンスモニター分析

... 残念ながら、スタック トレースは PerfMonitor でも機能しません。

また、アプリを 32 ビットとして実行してみました - 同じ問題。私のシンボルは symchk /v で正常にチェックアウトされます

この壊れたスタック トレース機能をデバッグする方法がわかりません。

4

2 に答える 2

1

私が正しく理解しているかどうかはわかりませんが、プロファイラブルなNGEN'アセンブリ'を生成する必要があります。

IOW:ngen install ass.dll /profile

于 2012-07-16T17:09:24.270 に答える
0

Windows 8 SDK の xperf バージョンが必要です。このバージョンは .net をサポートしています。新しい Performance Recorder UI でトレースを開始すると、このツールは生成された .net コンポーネントの PDB を生成し、xperfview と WPA がコールスタックをデコードできるようにします。

于 2012-12-03T14:39:25.037 に答える