OpenMP の環境変数
OpenMP API 内で使用される環境変数へのリンクを提供します。
OpenMP 標準の Visual C++ 実装には、次の環境変数が含まれます。 これらの環境変数はプログラムの起動時に読み込まれ、その値に対する変更は実行時には無視されます (たとえば、_putenv、_wputenv)。
環境変数 | 説明 |
---|---|
OMP_SCHEDULE | schedule(runtime) が for または parallel for のディレクティブで指定される場合、 schedule 句のビヘイビアーを変更します。 |
OMP_NUM_THREADS | Omp_set_num_threads または num_threads でオーバーライドされない限り、並列領域内のスレッドの最大数を設定します。 |
OMP_DYNAMIC | OpenMP ランタイムが並列領域のスレッド数を調整できるかどうかを指定します。 |
OMP_NESTED | 入れ子になった並列処理を omp_set_nested で有効にする無効にするかしない限り、入れ子になった並列処理有効にするかどうかを指定します。 |
OMP_DYNAMIC
OpenMP ランタイムが並列領域のスレッド数を調整できるかどうかを指定します。
set OMP_DYNAMIC[=TRUE | =FALSE]
解説
OMP_DYNAMIC
環境変数は、 omp_set_dynamic 関数によってオーバーライドできます。
OpenMP 標準の Visual C++ 実装の既定値は OMP_DYNAMIC=FALSE
です。
詳細については、「4.3 OMP_DYNAMIC」を参照してください。
例
OMP_DYNAMIC
環境変数を TRUE に設定するコマンドを次に示します:
set OMP_DYNAMIC=TRUE
次のコマンドは、OMP_DYNAMIC
環境変数の現在の設定を表示します:
set OMP_DYNAMIC
OMP_NESTED
入れ子になった並列処理を omp_set_nested
で有効にする無効にするかしない限り、入れ子になった並列処理有効にするかどうかを指定します。
set OMP_NESTED[=TRUE | =FALSE]
解説
OMP_NESTED
環境変数は、 omp_set_nested 関数によってオーバーライドできます。
OpenMP 標準の Visual C++ 実装の既定値は OMP_NESTED=FALSE
です。
詳細については、「4.4 OMP_NESTED」を参照してください。
例
OMP_NESTED
環境変数を TRUE に設定するコマンドを次に示します:
set OMP_NESTED=TRUE
次のコマンドは、OMP_NESTED
環境変数の現在の設定を表示します:
set OMP_NESTED
OMP_NUM_THREADS
Omp_set_num_threads または num_threads でオーバーライドされない限り、並列領域内のスレッドの最大数を設定します。
set OMP_NUM_THREADS[=num]
パラメーター
num
並列領域に必要なスレッドの最大数。 Visual C++ の実装では最大 64 です。
解説
OMP_NUM_THREADS
環境変数は、omp_set_num_threads 関数または num_threads でオーバーライドできます。
OpenMP 標準の Visual C++ 実装における num
の既定値は、ハイパースレッディング CPU を含む仮想プロセッサの数です。
詳細については、「4.2 OMP_NUM_THREADS」を参照してください。
例
OMP_NUM_THREADS
環境変数を 16
に設定するコマンドを次に示します:
set OMP_NUM_THREADS=16
次のコマンドは、OMP_NUM_THREADS
環境変数の現在の設定を表示します:
set OMP_NUM_THREADS
OMP_SCHEDULE
schedule(runtime)
が for
または parallel for
のディレクティブで指定される場合、 schedule 句のビヘイビアーを変更します。
set OMP_SCHEDULE[=type[,size]]
パラメーター
size
(省略可能) 反復のサイズを指定します。 size は正の整数である必要があります。 既定値は 1
で、type が static の場合を除きます。 type が runtime
の場合は無効です。
type
スケジューリングの種類 (dynamic
、guided
、runtime
、または static
)
解説
OpenMP 標準の Visual C++ 実装の既定値は OMP_SCHEDULE=static,0
です。
詳細については、「4.1 OMP_SCHEDULE」を参照してください。
例
OMP_SCHEDULE
環境変数を設定するコマンドを次に示します:
set OMP_SCHEDULE="guided,2"
次のコマンドは、OMP_SCHEDULE
環境変数の現在の設定を表示します:
set OMP_SCHEDULE