Поделиться через


Переменные среды OpenMP

Содержит ссылки на переменные среды, используемые в API OpenMP.

Реализация Visual C++ стандарта OpenMP включает следующие переменные среды. Эти переменные среды считываются при запуске программы и изменения их значений игнорируются во время выполнения (например, при использовании _putenv, _wputenv).

Переменная среды Description
OMP_SCHEDULE Изменяет поведение предложения schedule при schedule(runtime) указании в или parallel for директивеfor.
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 .

Значение по умолчанию в реализации Visual C++ стандарта OMP_DYNAMIC=FALSEOpenMP.

Дополнительные сведения см. в OMP_DYNAMIC версии 4.3.

Пример

Следующая команда задает 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 .

Значение по умолчанию в реализации Visual C++ стандарта OMP_NESTED=FALSEOpenMP.

Дополнительные сведения см. в OMP_NESTED 4.4.

Пример

Следующая команда задает 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
Максимальное количество потоков, которые требуется в параллельном регионе, до 64 в реализации Visual C++.

Замечания

Переменная OMP_NUM_THREADS среды может быть переопределена функцией omp_set_num_threads или num_threads.

Значение num по умолчанию в реализации Visual C++ стандарта OpenMP — это количество виртуальных процессоров, включая гиперпоточность ЦП.

Дополнительные сведения см. в OMP_NUM_THREADS версии 4.2.

Пример

Следующая команда задает OMP_NUM_THREADS переменную 16среды следующим образом:

set OMP_NUM_THREADS=16

Следующая команда отображает текущий параметр переменной OMP_NUM_THREADS среды:

set OMP_NUM_THREADS

OMP_SCHEDULE

Изменяет поведение предложения schedule при schedule(runtime) указании в или parallel for директивеfor.

set OMP_SCHEDULE[=type[,size]]

Параметры

size
(Необязательно) Задает размер итерации. размер должен быть положительным целым числом. Значение по умолчанию 1— за исключением того, когда тип является статическим. Недопустимо, если тип имеет значение runtime.

type
Тип планирования либо dynamic, guidedruntimeлибо static.

Замечания

Значение по умолчанию в реализации Visual C++ стандарта OMP_SCHEDULE=static,0OpenMP.

Дополнительные сведения см. в OMP_SCHEDULE версии 4.1.

Пример

Следующая команда задает OMP_SCHEDULE переменную среды:

set OMP_SCHEDULE="guided,2"

Следующая команда отображает текущий параметр переменной OMP_SCHEDULE среды:

set OMP_SCHEDULE