最適化のためのコンパイラー・オプションの概要

次の表では、パフォーマンスに最も影響を与えるコンパイラー・オプションを 説明しています。異なる組み合わせのコンパイラー・オプションを試して、ご使用の アプリケーションに最も適切なオプションを確認することができます。

表 17. 最適化のためのコンパイラー・オプション

オプション 概説
-O0 または -qnoopt コンパイラーは、非常に限定された最適化を行います。 これは、デフォルトの最適化レベルです。 アプリケーションの最適化を開始する前に、最適化レベル 0 でコンパイルと実行が正常に行われることを確認してください。
-qarch コンパイラーは、指定したプロセッサー・アーキテクチャーに対する命令を生成します。 このオプションを使用すると、コンパイラーは、指定したアーキテクチャーに存在し、他のアーキテクチャーには存在しない プロセッサー命令を利用することができます。
-qtune コンパイラーは、指定したプロセッサー・アーキテクチャーのアプリケーションを最適化します。 アプリケーションは、-qarch オプションで指定したすべてのプロセッサーで実行されますが、そのパフォーマンスは、 -qtune オプションで指定したプロセッサー用に調整されます。
-O2 コンパイラーは、基本の最適化を行います。このオプションは、コンパイル速度と 実行時パフォーマンス間のバランスが取れています。
-O3 コンパイラーは、メモリーまたはコンパイル時間、あるいはその両方を大量に使用する最適化を含む、積極的な最適化を行います。
-qhot コンパイラーは追加のループ最適化、自動ベクトル化を行い、オプションで配列埋め込みを実行します。このオプションは、数値の処理を含む化学アプリケーションで最も 役立ちます。-04 より短いコンパイル時間、および -O3 より高いパフォーマンスを 必要とする場合は、-O3 -qhot を試行してください。
-qcache コンパイラーは、プロセッサーで指定のキャッシュ構成が行われていると想定します。 このオプションは、アプリケーションを実行するすべてのプロセッサーでデフォルト以外の同じキャッシュ構成が行われている 場合に、パフォーマンスを向上させます。
-qipa コンパイラーは、プロシージャー間分析を実行して、アプリケーション全体を 1 つの単位として最適化します。 このオプションは、頻繁に使用されるルーチンを大量に含むアプリケーションで最も役立ちます。 多くの場合、このオプションによってコンパイル時間が大幅に長くなります。
-O4 これは、-O3 -qipa -qhot -qarch=auto -qtune=auto -qcache=auto に相当します。
-O5 これは、-O4 -qipa=level=2 に相当します。
-qpdf1
-qpdf2
コンパイラーは、プロファイル指示フィードバックを使用して、アプリケーションが異なるコード・セクションを 実行する頻度の分析に基づいてアプリケーションを最適化します。
IBM Copyright 2003