/SPGO (サンプル Profile-Guided 最適化を有効にする)

サンプル 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 開発環境でこのリンカー オプションを設定するには

  1. プロジェクトの [プロパティ ページ] ダイアログ ボックスを開きます。 詳細については、「Set C++ コンパイラとビルド プロパティを Visual Studio で参照してください。
  2. [構成プロパティ]>[リンカー]>[コマンド ライン] プロパティ ページを選択します。
  3. [その他のオプション] ボックスに/SPGOを追加します。 [OK] を選択して変更を保存します。

このリンカーをコードから設定するには

こちらも参照ください

MSVC リンカーのリファレンス
MSVC リンカー オプション
/SPD (サンプル プロファイル データベースの指定)
/SPDEMBED (サンプル プロファイル データベースの埋め込み)
/SPDIN (サンプル プロファイル データベースを使用)
チュートリアル: サンプル Profile-Guided 最適化 (SPGO) を使用してパフォーマンスを向上させる