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

UptoLike

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

24
x = x {+|-|*|/|.AND.|.OR.|.EQV.|.NEQV.}
скалярное_выражение_не_содержащее_x
x = скалярное_выражение_не_содержащее_x {+|-
|*|/|.AND.|.OR.|.EQV.|.NEQV.} x
x = {MAX|MIN|IAND|IOR|IEOR} (x,
скалярное_выражение_не_содержащее_x)
x = {MAX|MIN|IAND|IOR|IEOR}
(скалярное_выражение_не_содержащее_x, x)
flush[(список переменных)]
Данная
директива
задает
точку
синхронизации
,
в
которой
значения
переменных
,
указанных
в
списке
и
видимых
из
данной
нити
,
записываются
в
память
.
Этим
обеспечивается
согласование
содержимого
памяти
,
доступного
разным
нитям
.
ordered
end ordered
Обеспечивает
сохранение
того
порядка
выполнения
итераций
цикла
,
который
соответствует
последовательному
выполнению
программы
.
threadprivate(список common-блоков)
Определяет
common-
блоки
,
перечисленные
в
списке
,
локальными
.
Операторы OpenMP
Операторы
OpenMP
используются
совместно
с
директивами
.
private(список переменных)
Объявляет
переменные
из
списка
локальными
.
firstprivate(список переменных)
Объявляет
переменные
из
списка
локальными
и
инициализирует
их
значениями
из
блока
программы
,
предшествующего
данной
директиве
.
lastprivate(список переменных)
Объявляет
переменные
из
списка
локальными
и
назначает
им
значения
из
того
блока
программы
,
который
был
выполнен
последним
.
copyprivate(список переменных)
После
завершения
выполнения
блока
,
заданного
директивой
single
,
значения
локальных
переменных
из
списка
распределяются
между
остальными
нитями
.