最適化機構レポートの作成

インテル® C++コンパイラには、最適化レポートを生成、管理するオプションがあります。

レポートを作成する最適化の指定

コンパイラは、-opt_report_phasephase オプションの phase 引数で指定される最適化機構のレポートを作成できます。複数の最適化機構のレポートを作成するために同じコマンドライン上に複数回、オプションを使用できます。現在、次の最適化機構レポートがサポートされています。

最適化機構
の論理名
最適化機構のフルネーム
ipo Interprocedural Optimizer (プロシージャ間の最適化)
hlo High Level Optimizer (高レベル最適化)
ilo Intermediate Language Scalar Optimizer (中間言語スカラ最適化機構)
ecg Code Generator (コード・ジェネレータ)
omp OpenMP
all すべてのフェーズ

上記の最適化機構の論理名の 1 つが指定されるとその最適化機構からのすべてのレポートが作成されます。

例えば、-opt_report_phaseipo -opt_report_phaseecg では、プロシージャ間の最適化およびコードの生成からレポートが作成されます。

各最適化機構は、特定の最適化を行うことができます。これらの各最適化は、論理名の 1 つがプリフィックスになります。次に例を示します:

Optimizer_optimization フルネーム
ipo_inline Interprocedural Optimizer (プロシージャ間の最適化)、inline expansion of functions (関数のインライン展開)
ipo_constant_propagation Interprocedural Optimizer (プロシージャ間の最適化)、constant propagation (定数伝播)
ipo_function_reorder Interprocedural Optimizer (プロシージャ間の最適化)、function reorder (関数の再順序化)
ilo_constant_propagation Intermediate Language Scalar Optimizer (中間言語スカラ最適化機構)、constant propagation (定数の伝播)
ilo_copy_propagation Intermediate Language Scalar Optimizer (中間言語スカラ最適化機構)、copy propagation (コピー伝播)
ecg_software_pipelining Code Generator (コード・ジェネレータ)、software pipelining (ソフトウェアのパイプライン化)

指定された最適化機構のプリフィックスと一致するすべての最適化レポートが作成されます。例えば、-opt_report_phase ilo_co が指定された場合、定数伝播およびコピー伝播の両方からのレポートが作成されます。

利用可能なレポート生成

-opt_report_help オプションは、レポートの作成に利用可能な最適化機構の論理名をリストします。