インテル® VTune™ プロファイラーを使用すると、インテル® メディア SDK タスクの実行状況を時系列で解析できます。
必要条件:
インテル® メディア SDK タスクの実行を解析するには、次の操作を行います。
Windows*: https://www.intel.com/content/www/us/en/download-center/home.html (英語) から最新のインテル® グラフィックス・ドライバーをインストールします。
Linux*: インテル® Media SDK (英語) をインストールし、システムが GPU 解析用に設定されていることを確認します。リモート収集では、ターゲットの Linux* システムを設定します。
<vtune>\bin64\amplxe-gpuetwreg.exe -s
インテル® メディア SDK プログラム解析を設定するには、次の操作を行います。
[プロセスにアタッチ] と [システムをプロファイル] ターゲットタイプでは、MFX トレースを有効にします。
root 権限でインテル® VTune™ プロファイラーを起動し、インテル® メディア SDK ターゲット向けに解析を設定します。
[アプリケーションを起動] モードでは、通常の [プロジェクトの設定] と [解析ターゲットの設定] 手順に従い、アプリケーションやスクリプトをターゲットとして指定します。インテル® VTune™ プロファイラーは環境変数を自動的に設定し、Linux* ではインテル® メディア SDK プログラム解析用の .mfx_trace 設定ファイルを作成します。
[プロセスにアタッチ] と [システムのプロファイル] モードでは、インテル® VTune™ プロファイラーは、.mfx_trace を自動生成しません。そのため、インテル® メディア SDK プログラム解析は不完全になります。次のように手動で MFX トレースを有効にする必要があります。
ITT トレースを結果に含めるようにシステムを設定します。
Linux*:
export INTEL_LIBITTNOTIFY32=/opt/intel/oneapi/vtune/latest/lib32/runtime/libittnotify_collector.so export INTEL_LIBITTNOTIFY64=/opt/intel/oneapi/vtune/latest/lib64/runtime/libittnotify_collector.so
Windows*:
set INTEL_LIBITTNOTIFY32=C:\Program Files (x86)\Intel\oneAPI\vtune\latest\bin32\runtime\ittnotify_collector.dll set INTEL_LIBITTNOTIFY64=C:\Program Files (x86)\Intel\oneAPI\vtune\latest\bin64\runtime\ittnotify_collector.dll
Linux* では、解析を実行する前に、.mfx_trace ファイルを作成してください。
echo "Output=0x30" > $HOME/.mfx_trace chmod +r $HOME/.mfx_trace
なんらかの理由で、このファイルの設定がインテル® VTune™ プロファイラーのプロジェクト設定と異なる場合、.mfx_trace 設定が優先され、インテル® VTune™ プロファイラー のプロジェクト設定がオーバーライドされます。
インテル® VTune™ プロファイラー・ツールバーの [解析の設定] ボタンをクリックします。
[どのように] ペインで、インテル® メディア SDK プログラム向けのプロファイル・タイプを選択します。例えば、GPU 計算/メディア・ホットスポット解析や GPU オフロード 解析、またはカスタム解析など。
[GPU プログラミング API をトレース] オプションが選択されていることを確認してください。
オプション: カスタム解析では、[GPU 利用率] オプションを選択します。
GPU 計算/メディア・ホットスポットと GPU オフロード解析タイプでは、このオプションはデフォルトで有効になります。
[開始] をクリックして解析を実行します。
データ収集が完了すると、インテル® VTune™ プロファイラーは結果をデフォルトのビューポイントで開きます。インテル® メディア SDK タスクを実行中の CPU ワークロードを解析するには、[グラフィックス] ウィンドウを使用します。