サンプル Profile-Guided 最適化 (SPGO) を有効にし、出力バイナリと共に空のサンプル プロファイル データベース (SPD) ファイルを作成します。
Syntax
/SPGO
注釈
/SPGO リンカー オプションは、SPGO ワークフローを開始します。 プロファイリング データのプレースホルダーとして機能する空の .spd ファイルを作成するようにリンカーに指示します。
/SPGOを使用してビルドした後、xperfを使用してパフォーマンス トレースを収集し、SPTAggregateを使用して SPT ファイルに変換した後、SPDConvertを使用してデータを SPD ファイルにインポートします。 SPD ファイルにプロファイル データが含まれたら、SPD ファイルを使用して再構築し、最適化されたバイナリを生成します。 コンパイラとリンカーは、既定または /SPD で指定された SPD 入力ファイルを探します。
/SPDIN (サンプル プロファイル データベースの使用) オプションは、入力ファイルが過剰に書き込まれ、望ましくない場合に便利です。
/SPGOを使用してビルドしたが、SPD ファイルにプロファイル データがまだ含てられていない場合は、次のようなメッセージが表示されます。
Result: SPD <filename>.spd does not contain sample profile, compiling without profile guided optimizations
このメッセージは最初のビルドで必要であり、SPD ファイルがプロファイリング データを受信する準備ができていることを示します。
既定では、ビルド プロセスによって、リンクが呼び出されたディレクトリ内の出力ファイルと同じベース名を持つ SPD ファイルが作成されます。
/SPDを使用して、別の名前または場所を指定します。
プロファイル データが収集された後、 /SPDEMBED を使用して、SPD データを PDB ファイルに埋め込みます。
/DEBUG オプションを指定して、リンカーが PDB ファイルを生成していることを確認します。
SPGO ワークフローの詳細については、「 チュートリアル: サンプル Profile-Guided 最適化 (SPGO) を使用してパフォーマンスを向上させる」を参照してください。
Visual Studio 開発環境でこのリンカー オプションを設定するには
- プロジェクトの [プロパティ ページ] ダイアログ ボックスを開きます。 詳細については、「Set C++ コンパイラとビルド プロパティを Visual Studio で参照してください。
- [構成プロパティ]>[リンカー]>[コマンド ライン] プロパティ ページを選択します。
- [その他のオプション] ボックスに
/SPGOを追加します。 [OK] を選択して変更を保存します。
このリンカーをコードから設定するには
- AdditionalOptionsを参照してください。
こちらも参照ください
MSVC リンカーのリファレンス
MSVC リンカー オプション
/SPD (サンプル プロファイル データベースの指定)
/SPDEMBED (サンプル プロファイル データベースの埋め込み)
/SPDIN (サンプル プロファイル データベースを使用)
チュートリアル: サンプル Profile-Guided 最適化 (SPGO) を使用してパフォーマンスを向上させる