Linux* アプリケーション・バイナリーのデバッグ情報

インテル® VTune™ プロファイラーは、正確なパフォーマンス・データを収集して、ソース解析を行うため、バイナリーファイルのデバッグ情報を必要とします。

パフォーマンス解析で使用するデバッグ情報

システムとアプリケーション・モジュールのデバッグ情報が利用可能な場合、インテル® VTune™ プロファイラーは、コールスタック、ソースデータ、関数名などの完全な統計情報を提供することができます。例えば、[フィルター] ツールバーの [コールスタック・モード][ユーザー/システム関数] オプションを選択して、ユーザーとシステム関数の両方のデータを表示できます。

インテル® VTune™ プロファイラーがバイナリーのデバッグ情報を見つけられなかった場合、関数境界とホットスポットのアドレスを疑似関数名 func@address にホットスポットのアドレスを割り当てます。次に例を示します。

例えば、モジュールが見つからないか関数名を解決できない場合、インテル® VTune™ プロファイラーは、[module] と表示します。

デバッグ情報がない場合、インテル® VTune™ プロファイラーはコールスタックをアンワインドしないため、[コールスタック] ペインを正しく表示できない可能性があります。また一部のケースでは、デバッグ情報を持たないモジュールのファイナライズには時間がかかることがあります。

DWARF 形式でデバッグ情報を生成

コードのコンパイルに -g オプションを使用すると、通常デバッグ情報は DWARF 形式で生成されます。

コンパイラーのデフォルトのデバッグ情報形式が DWARF でない場合、-gdwarf-version オプション (例えば、-gdwarf-2 または -gdwarf-3) を使用します。

ELF 形式でデバッグ情報ファイルを生成

個別のデバッグ情報を作成し、デバッグリンクあるいはビルド ID を介して実行可能ファイル/ライブラリーとリンクすることができます。詳細は、GNU* Binutils のドキュメントを参照してください。

インテル® VTune™ プロファイラーは両方のリンクタイプを識別します。

SYCL* アプリケーション向けのデバッグ情報を生成

GPU で実行される SYCL* アプリケーションのパフォーマンス・プロファイルを有効にしてデバッグ情報を生成するには、-gline-tables-only と -fdebug-info-for-profiling オプションを指定する必要があります。

OpenMP* オフロード・アプリケーション向けのデバッグ情報を生成

インテル® oneAPI DPC++/C++ コンパイラー (英語)、またはインテル® Fortran コンパイラーを使用して OpenMP* オフロード・アプリケーションをビルドする場合、--info-for-profiling オプションを使用してコードをコンパイルします。

インテル® Fortran コンパイラーを使用して OpenMP* オフロードコードをコンパイルする場合、-debug offload オプションを指定する必要があります。

関連情報