共用メモリーの並列処理の使用

IBM pSeries(TM) のマシンの中には、共用メモリーの並列処理ができるものがあります。 -qsmp でコンパイルすると、この機能の活用に必要なスレッド化されたコードを生成することができます。このオプションは、少なくとも -O2 の最適化レベルを暗黙指定します。

次の表は、最もよく使用されるサブオプションのリストです。すべてのサブオプションの説明と構文は、「XL C/C++ コンパイラー・リファレンス」に記載されています。


表 11. 一般に使用される -qsmp のサブオプション

サブオプション 振る舞い
auto コンパイラーに、可能ならユーザー支援なしに自動で並列コードを生成するように指示します。 -qsmp のサブオプションを指定しない場合は、これがデフォルト設定となり、このデフォルト設定で、 opt サブオプションも暗黙指定されます。
omp コンパイラーに、明示的並列処理を指定するための OpenMP 言語拡張に従うように指示します。 -qsmp=omp-qsmp=auto は、現時点では互換性がありません。
opt コンパイラーに、最適化と同時に並行処理も行うように指示します。最適化は、他の最適化オプションがない場合は、 -O2 -qhot に相当します。
fine_tuning サブオプションの他の値は、スレッド・スケジューリング、ネストされた並列処理、ロックなどの制御に使用されます。

-qsmp の最大活用

以下に、-qsmp オプションを使用する場合の提案事項を挙げます。

IBM Copyright 2003