本節は、最適化の背景となる情報、XL Fortran の最適化機能の使用法に関する 手引き、XL Fortran の最適化手法の詳細から構成されています。
単純なコンパイルとは、ソース・コードを実行可能または共用オブジェクトに翻訳または変換することを言います。 最適化変換とは、実行時にアプリケーションの総合的パフォーマンスを向上させる変換方式です。 XL Fortran は、IBM ハードウェアに合わせて調整された最適化変換のポートフォリオを提供します。 このような変換では、以下が可能になります。
コンパイラーは適応力の高い洗練されたプログラム分析および変換能力を 持っているため、比較的少ない開発努力で大きなパフォーマンス改善が可能です。 さらに、コンパイラーは OpenMP のような、ハイパフォーマンス・コードを 作成できるプログラミング・モデルの使用を可能にします。
最適化は、製品リリースのビルドのような、アプリケーション開発サイクルの後のほうのフェーズを 対象としています。 可能であれば、コードを最適化する前に、最適化なしでコードをテストおよびデバッグしてください。
最適化は、コンパイラー・オプションとディレクティブで制御されます。 ただし、コンパイラー・フレンドリーなプログラミング・イディオムは、オプションやディレクティブのように パフォーマンスに有効である場合があります。 手作業によるコードの最適化 (たとえば手動によるループ・アンロールなど) を過剰に行うのは、現在では不要で あり、お勧めできません。 異常な構文はコンパイラー (および他のプログラマー) を混乱させ、新しいマシンでのアプリケーションの 最適化を困難なものにします。 『コンパイラー・フレンドリーなプログラミング』に、 いくつかのイディオムの提案と、良好な最適化が可能なコードを作成するためのプログラミング上のヒントが 記載されています。
重要なことは、すべての最適化がすべてのアプリケーションにとって有効であるわけではないことです。
デバッグ能力の削減に伴うコンパイル時間の増加と、コンパイラーによって行われる最適化の度合いとの間で、
トレードオフを常に考慮しておく必要があります。