インテル® VTune™ Amplifier 2018 ヘルプ

Windows* ストア・アプリケーションのサポート

インテル® VTune™ Amplifier は、[Attach to Process (プロセスにアタッチ)][Profile System (システムをプロファイル)] によって Windows* ストア C/C++、C#、および JavaScript* アプリケーションのハードウェア・イベントベース・サンプリング解析をサポートします。[Launch Application (アプリケーションを起動)] モードはサポートされません。

解析を始める前に、データ収集を実行する管理者権限があることを確認してください。

Windows* ストア C# アプリケーション解析の制限事項

Microsoft* Windows* 8 から、すべての Windows* ストア C# アプリケーションは自動的に NGEN サービスによって 24 時間ごとに事前コンパイルされるようになりました。インテル® VTune™ Amplifier は、これらのメソッドのシンボルが欠如しているためネイティブイメージのメソッドを解決できません。その結果、インテル® VTune™ Amplifier で事前コンパイルされたアプリケーションをプロファイルすると、C# メソッドの代わりに [unknown] 関数エントリーが表示されます。これには、Ngen.exe ツールを使用して ネイティブイメージの .pdb ファイルを生成するか、次回 NGEN で自動的に事前コンパイルされるまで一時的な回避策を導入します。

  1. 自動的に事前コンパイルされたアセンブリーの場所を特定します。一般的に、32 ビットのアセンブリーは、C:\Users\Administrator\AppData\Local\Packages\<package>\AC\Microsoft\CLR_v4.0_32\NativeImages\ フォルダーに配置され、64 ビットのアセンブリーは C:\Users\Administrator\AppData\Local\Packages\<package>\AC\Microsoft\CLR_v4.0_32\NativeImages\フォルダーに配置されます。

    <package> はアプリケーションによって異なります。パッケージを特定するには、次のいずれかのオプションを使用します。

    • タスクマネージャーを開いて、アプリケーションのプロパティーをチェックします。[全般] タブには、省略されるべきバージョンを含むパッケージの値が含まれます。例えば、[全般]47828<app_name>_1.0.0.4_neutral__sgvg9sxsmbbt4 が表示されると、NGEN で処理されたモジュールは C:\Users\Administrator\AppData\Local\Packages\47828<app_name>_sgvg9sxsmbbt4\AC\Microsoft\CLR_v4.0_32\NativeImages\ に配置されます。

    • プロセス・エクスプローラー・ツールを使用: アプリケーションにロードされたモジュールのリストを調査し、*.ni.exe モジュールを検索して、その場所を特定します。

  2. 次に *.ni.dll または *.ni.exe を含むフォルダーをリネームします。例えば、C:\Users\Administrator\AppData\Local\Packages\47828<app_name>_sgvg9sxsmbbt4\AC\Microsoft\CLR_v4.0_32\NativeImages\<app_name>C:\Users\Administrator\AppData\Local\Packages\47828<app_name>_sgvg9sxsmbbt4\AC\Microsoft\CLR_v4.0_32\NativeImages\<app_name> にリネームします。

  3. アプリケーションを再起動します。

    CLR JIT コンパイルされたメソッド。次回の自動 NGEN 事前コンパイルまで、C# アプリケーションのプロファイルにインテル® VTune™ Amplifier を利用できます。

    この回避策は、.NET Framework ライブラリー (例えば、mscorlib.dll) には推奨されません。

Windows* ストア JavaScript* アプリケーション解析の制限事項

インテル® VTune™ Amplifier は、JavaScript* モジュールとソースファイルのマッピングをサポートします。しかし、グリッドや [Timeline (タイムライン)] ペインからソースへ移動したときに、インテル® VTune™ Amplifier はデフォルトではパフォーマンス・クリティカルなコード行の場所を特定できません。この場合、[Source (ソース)] ペインには関数の最初の行が表示されます。ホットなコード行を切り替えるには、ナビゲーション・ボタンを使用します。

関連情報