共用方式為


OpenMP 環境變數

提供 OpenMP API 中使用的環境變數連結。

OpenMP 標準的 Visual C++實作包含下列環境變數。 這些環境變數會在程序啟動時讀取,並在運行時間忽略其值的修改(例如,使用 _putenv,_wputenv)。

環境變數 描述
OMP_SCHEDULE 在 或 parallel for 指示詞中for指定時schedule(runtime),修改 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覆寫。

Visual C++ OpenMP 標準實作中的 預設值 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

在 或 parallel for 指示詞中for指定時schedule(runtime),修改 schedule 子句的行為

set OMP_SCHEDULE[=type[,size]]

參數

size
(選擇性)指定反覆專案的大小。 size 必須是正整數。 默認值為 1,但類型為靜態時除外。 當類型runtime無效。

type
排程的類型,可以是 dynamicguidedruntime、 或 static

備註

OpenMP 標準的 Visual C++ 實作中的預設值為 OMP_SCHEDULE=static,0

如需詳細資訊,請參閱 4.1 OMP_SCHEDULE

範例

下列命令會 OMP_SCHEDULE 設定環境變數:

set OMP_SCHEDULE="guided,2"

下列命令會顯示環境變數的 OMP_SCHEDULE 目前設定:

set OMP_SCHEDULE