インテル® C++ コンパイラー 18.0 デベロッパー・ガイドおよびリファレンス
プロファイルに基づく最適化 (PGO) で使用できるインストルメント済みオブジェクト・ファイルを生成します。
インテル® グラフィックス・テクノロジーをターゲットとするインテル® 64 アーキテクチャー、または IA-32 アーキテクチャーで実行するインテル® グラフィックス・テクノロジーをターゲットとする場合は利用できません。
Linux* および macOS*: | -prof-gen[=keyword[,keyword],...] -no-prof-gen |
Windows*: | /Qprof-gen[:keyword[,keyword],...] /Qprof-gen- |
keyword |
インストルメント済みファイルの詳細を指定します。設定可能な値は以下のとおりです。
|
-no-prof-gen または /Qprof-gen- |
プロファイル生成は無効になります。 |
このオプションは、プロファイルに基づく最適化 (PGO) で使用できるインストルメント済みオブジェクト・ファイルを生成します。各基本ブロックの実行カウントを取得します。
[Q]prof-gen では複数の設定を指定できます。例えば、次のように指定します。
-prof-gen=scrpos -prof-gen=threadsafe (Linux* および macOS*) -prof-gen=scrpos, threadsafe (上記と等価です)
/Qprof-gen:scrpos /Qprof-gen:threadsafe (Windows*) /Qprof-gen:scrpos, threadsafe (上記と等価です)
srcpos または globdata キーワードを指定すると、静的プロファイル情報ファイル (.spi) が作成されます。これらの設定は、.spi ファイルの書き込み競合のため、並列ビルドを行うのに必要な時間が増加する可能性があります。
これらのオプションは、プロファイルに基づく最適化 (PGO) の第 1 フェーズで使用され、インストルメント済み実行の準備として、インストルメント済みコードをオブジェクト・ファイル内に生成するようにコンパイラーに指示します。
プロファイルを生成するためのインストルメント済みバイナリーファイルの生成に [Q]prof-gen オプションを使用すると、一部の最適化が無効になります。これらの最適化は、生成されたプロファイルを使用する [Q]prof-use オプションを指定した後続のプロファイルに基づくコンパイルでは、無効になりません。
Visual Studio*: [General (全般)] > [Profile Guided Optimization (プロファイルに基づく最適化)]
[General (全般)] > [Code Coverage Build Options (コードカバレッジのビルドオプション)]
Eclipse*: [Optimization (最適化)] > [Profile Guided Optimization (プロファイルに基づく最適化)]
Xcode*: なし
なし