並列処理操作は、ユーザーのプログラム・ソースでプラグマ・ディレクティブによって制御します。プラグマは、-qsmp コンパイラー・オプションで並列化が使用可能になっているときにのみ有効です。
構文
#pragma omp pragma_name_and_args statement_block
プラグマ・ディレクティブは、一般に、適用対象のコードのセクションの直前に記述します。 omp parallel ディレクティブは、並列化されるプログラム・コードの領域を定義する場合に使用します。その他の OpenMP ディレクティブは、定義済み並列領域内のデータ変数の可視性、およびその領域内の作業の共用方法と同期方法を定義します。
例えば、以下の例は、 for ループの反復が並列で実行できる並列領域を定義しています。
#pragma omp parallel { #pragma omp for for (i=0; i<n; i++) ... }
この例は、プログラム・コードの複数の非反復セクションが並列で実行できる並列領域を定義しています。
#pragma omp sections { #pragma omp section structured_block_1 ... #pragma omp section structured_block_2 ... .... }
smp
並列処理を制御するプラグマ
並列処理のための OpenMP ランタイム・オプション
並列処理に使用する組み込み関数