XL Fortran for AIX V8.1.1

ユーザーズ・ガイド


最適化レベルの選択

最適化を行うと、コンパイル時間は長くなりますが、通常は、実行時間は短くなります。 XL Fortran を使用すれば、最適化をコンパイル時に実行したいかどうかを選択することができます。 |デフォルトでは、コンパイラーは最適化を実行しません (-qnoopt)。

|コンパイラーの最適化を使用可能にするには、-O コンパイラー・オプションと、レベルを示す数字を指定してください。 |下の表は、それぞれの最適化レベルにおけるコンパイラーの動作を要約したものです。
|

最適化レベル
オプション 動作
-qnoopt/-O0 コンパイルは高速、コードはデバッグ可能、プログラム・セマンティクスは保持される。
-O2 (-O と同じ) 包括的な低レベルの最適化。部分的デバッグがサポートされる。
-O3 より広範囲な最適化。一部の精度がトレードオフされる。
-O4 および -O5 プロシージャー間の最適化。ループ最適化。自動マシン・チューニング。

|最適化レベル -O2

|最適化レベル -O2 (-O と同じ) では、コンパイラーは |包括的な低レベル最適化を実行します。 |これには以下の技法が含まれます。 |

|最適化レベル -O2 での |最小デバッグ情報 は、以下の動作から構成されます。 |

|最適化レベル -O3

|最適化レベル -O3 では、コンパイラーは -O2 よりもさらに |幅広い最適化を実行します。 |最適化は、次のようにして拡大され掘り下げられます。 |

|-qnostrict の暗黙設定により、以下のような精度のトレードオフがコンパイラーによって |行われます。 |

|-O3 最適化は以下を行います。 |

|実行時パフォーマンスが非常に重要な要因であり、マシン・リソースが余分なコンパイル時の動作に適応できる |場合は、-O3 オプションを使用してください。

|実行される正確な最適化は、次のような多数の要因によって決まります。 |

|-O2 および -O3 を最大限に活用する

|最適化レベル -O2-O3 を使用するための推奨アプローチは以下のとおりです。

|

-O4 および -O5 オプション

最適化レベル -O4-O5 は、自動的に他のいくつかの最適化オプションを活動化します。最適化レベル -O4 には以下が含まれます。

最適化レベル -O5 には以下が含まれます。

-O5 をコンパイル・ステップで指定する場合は、リンク・ステップでも指定する必要があります。 -qipa オプションは厳密に言って最適化レベルではありませんが、これは最適化をすべてのプロシージャーに拡張します (プロシージャーが別のファイルにある場合も)。また、このオプションは他の最適化オプション、特に -O (任意のレベルで) および -Q によって行われた最適化の効率を高めます。また、本質的にコンパイルの時間を長くする可能性があるので、すでにデバッグしてあって、使用する準備ができているアプリケーションを調整する場合などに使用できます。

関連情報:
| |


[ ページのトップ | 前ページ | 次ページ | 目次 | 索引 ]