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

インテル® Fortran コンパイラは、最適化レポートを生成、管理するオプションを提供します。

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

コンパイラは、-opt_report_phasephase オプションの phase 引数で指定される最適化機構のレポートを作成できます。

複数の最適化機構のレポートを作成するために同じコマンドライン上に複数回、オプションを使用できます。

現在、次の最適化機構レポートがサポートされています:

最適化機構の論理名

最適化機構のフルネーム

ipo

Interprocedural Optimizer (プロシージャ間の最適化機構)

hlo

High-level Language Optimizer (高水準言語の最適化機構)

ilo

Intermediate Language Scalar Optimizer (中間言語スカラ最適化機構)

ecg

Itanium®-based Compiler Code Generator (Itanium コンパイラのコード・ジェネレータ)

all

すべての最適化機構

上記の最適化機構の論理名の 1 つが指定されるとその最適化機構からのすべてのレポートが作成されます。例えば、-opt_report_phaseipo および -opt_report_phaseecg は、プロシージャ間の最適化機構およびコード・ジェネレータからのレポートを作成します。

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

Optimizer_optimization

フルネーム

ipo_inl

Interprocedural Optimizer (プロシージャ間の最適化機構)、inline expansion of functions (関数のインライン展開)

ipo_cp

Interprocedural Optimizer (プロシージャ間の最適化機構)、copy propagation (コピー伝播)

hlo_unroll

High-level Language Optimizer (高水準言語の最適化機構)、loop unrolling (ループのアンロール)

hlo_prefetch

High-level Language Optimizer (高水準言語の最適化機構)、Prefetching (プリフェッチ)

ilo_copy_propagation

Intermediate Language Scalar Optimizer (中間言語スカラ最適化機構)、Copy Propagation (コピー伝播)

ecg_swp

Itanium®-based Compiler Code Generator (Itanium コンパイラのコード・ジェネレータ)、Software Pipelining (ソフトウェア・パイプライン処理)

次のコマンドでは、Itanium コンパイラ のコード・ジェネレータ (ecg) のレポートを生成します。

ifort -c -opt_report -opt_report_phase ecg myfile.f  

各アイテムの意味は次のとおりです。

最適化機構内の特定の最適化のフルネームを指定する必要はありません。 数個の文字だけで十分です。  指定された最適化機構のプリフィックスと一致するすべての最適化レポートが作成されます。例えば、-opt_report_phase ilo_co が指定された場合、定数伝播およびコピー伝播の両方からのレポートが作成されます。

利用可能なレポート生成

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

IA-32 システムの場合、次のレポートを生成できます。

Itanium ベース・システムの場合、次のレポートを生成できます。


hlo または ipo のレポートを指定しても、制御オプション (-O3-ip または -ipo) がそれぞれオンではない場合、コンパイラは空のレポートを生成します。