IPO に関連するパフォーマンス問題の理解

IPO についての一般的な最適化ガイドラインを示します。

一般的なガイドラインに加えて、IPO を使用するときに回避するべき作業があります。次にその回避する作業を示します。

IPO パフォーマンスの向上

IPO を使用してパフォーマンスの向上を達成するには、2 つの重要なポイントがあります。

  1. インライン・ヒューリスティックの操作

  2. プログラム全体の解析の適用範囲

プログラム全体の解析 (WPS) は、実行されると、多くの IP 最適化を有効にします。WPS プロセス中、コンパイラーは、参照がすべて解決され、指定されたシンボルが .il ファイルに定義されているかどうかを判断するために、.il、.obj、および .lib ファイルをすべて読み取ります。

データと関数の両方の .il ファイルに含まれているシンボルは、WPS 最適化操作の対象です。現在、.il 情報は IPO を使用してコンパイルされたファイル用に生成されます。コンパイラーはオブジェクトの内部に .il 情報を埋め込んで、IPO 情報がライブラリー、DLL、および共有オブジェクトの内部に含まれるようにします。

アプリケーションのパフォーマンスのための重要な関係

IL を含むモジュールで定義され、IL を含まないモジュールで一度も参照されない変数または関数は、プログラム全体の最適化の対象です。それ以外の変数 (および関数) は、これらの最適化の対象外となります。多くの重要な IPO 最適化は、内部オプションと IP 最適化マスクにより制御することができます。