ターゲット・マシンまたはターゲット・マシン・クラスの最適化

ターゲット・マシン・オプションは、指定のプロセッサーまたはアーキテクチャー・ファミリーでの最適な実行のための コードを生成するように、コンパイラーに指示するオプションです。 デフォルトでは、コンパイラーはサポートされるすべてのシステムで実行されるコードを生成しますが、指定のシステムでは おそらく最適状態には及ばないものになります。 適切なターゲット・マシン・オプションを選択することで、ターゲット・プロセッサーの最も幅広い選択、指定ファミリー内の プロセッサーの範囲、または特定プロセッサーに合わせて、アプリケーションを最適化することができます。 以下のコンパイラー・オプションが、ターゲット・マシンの個々の特徴に効果をもたらすように、最適化を制御します。

ターゲット・マシン・オプション
オプション 動作
-q32 32 ビット・アドレッシング・モデル (32 ビット実行モード) 用のコードを生成します。
-q64 64 ビット・アドレッシング・モデル (64 ビット実行モード) 用のコードを生成します。
-qarch 命令コードを生成する対象となる、プロセッサー・アーキテクチャーのファミリー、または特定アーキテクチャーを選択します。
-qtune 指定のプロセッサーでの実行に対してバイアス最適化を行います。 ターゲットとして使用する命令セット・アーキテクチャーに関しては何も暗黙指定はしません。
-qcache 特定のキャッシュまたはメモリー形状を定義します。 デフォルトは -qtune で設定されます。

事前定義最適化レベルを選択すると、上記の個々のオプションのデフォルト値が設定されます。

関連情報:
-qarch オプション-qtune オプション、および -qcache オプションを参照してください。

ターゲット・マシン・オプションを最大限に活用する

-qarch で、コードが適正に実行されることが期待されるマシンの最小ファミリーを 指定してください。

-qtune で、最良のパフォーマンスを期待するマシンを指定してください。 わからない場合は、指定の -qarch 設定での最適化に合わせて最良の調整を行う方法をコンパイラーに判断させるようにしてください。

-qcache オプションを使用する前に、-qlist を使用して リストのオプション・セクションを参照し、現行設定が満足のいくものであるかを確認してください。 -qlistopt オプションが指定されたときは、設定はリスト自体に示されます。 システムが構成可能な L2 または L3 キャッシュ・オプションを持つ場合、あるいは実行モードがキャッシュの 共用レベルの有効サイズを削減する場合、キャッシュ形状の変更は有効である可能性があります (たとえば、POWER4 でのチップあたり 2 コアの SMP 実行)。

-qcache を使用する場合は、それとともに -qhot または -qsmp を使用してください。

関連情報:
IBM Copyright 2003