Средства программирования для многопроцессорных вычислительных систем. Немнюгин C.А. - 25 стр.

UptoLike

Составители: 

25
nowait
Отменяет
барьерную
синхронизацию
при
завершении
выполнения
параллельной
секции
.
shared(список переменных)
Объявляет
переменные
из
списка
общими
для
всех
нитей
.
default(private|shared|none)
Данный
оператор
позволяет
изменить
правила
определения
области
видимости
переменных
,
действующие
по
умолчанию
.
Вариант
private
используется
только
в
языке
Fortran.
reduction(операция|встроенная функция: список переменных)
Оператор
приведения
(
редукции
)
значений
локальных
переменных
из
списка
с
помощью
указанной
операции
или
встроенной
функции
языка
.
Операция
редукции
применяется
к
нескольким
значениям
и
возвращает
одно
значение
.
if(скалярное логическое выражение)
Условный
оператор
.
num_threads(скалярное целое выражение)
Задает
количество
нитей
.
Альтернативный
способ
задания
количества
нитей
обеспечивает
переменная
окружения
OMP_NUM_THREADS
.
schedule(характер_распределения_итераций[,
количество_итераций_цикла])
Данный
оператор
задает
способ
распределения
итераций
цикла
между
нитями
:
static
количество
итераций
цикла
,
передаваемых
для
выполнения
каждой
нити
фиксировано
и
распределяется
между
нитями
по
принципу
кругового
планирования
.
Если
количество
итераций
не
указано
,
оно
полагается
равным
1;
dynamic
количество
итераций
цикла
,
передаваемых
для
выполнения
каждой
нити
фиксировано
.
Очередная
«
порция
»
итераций
передается
освободившейся
нити
;
guided
количество
итераций
цикла
,
передаваемых
для
выполнения
каждой
нити
постепенно
уменьшается
.
Очередная
«
порция
»
итераций
передается
освободившейся
нити
;
runtime
тип
распределения
работы
определяется
во
время
выполнения
программы
,
например
,
с
помощью
переменной
окружения
OMP_SCHEDULE
.
copyin(список имен common-блоков)
При
выполнении
этого
оператора
данные
из
главной
нити
копируются
в
локальные
экземпляры
common
-
блока
в
начале
каждой
параллельной
секции
.
Имена
задаются
между
символами
«
/
».