ВУЗ:
Составители:
Рубрика:
Реализация директивы workshare должна добавлять необходимую
синхронизацию для обеспечения стандартной семантики FORTRAN'а. В
остальном операторы в структурной области разделяются на работы следующим
образом
● для векторных выражений, включая встроенные векторные
трансформационные функции (MATMUL, DOT_PRODUCT, SUM, PRODUCT,
MAXVAL, MINVAL, COUNT, ANY, ALL, SPREAD, PACK, UNPACK, RESHAPE,
TRANSPOSE, EOSHIFT, CSHIFT, MINLOC, MAXLOC.)
● вычисление каждого из элементов векторного выражения, включая
ELEMENTAL-функции, является отдельной работой
● вычисление встроенных векторных функций может разделяться
компилятором на любое ему удобное число работ
● в векторном присваивании присваивание каждого элемента вектора
является отдельной работой
● каждое скалярное присваивание является отдельной работой
● в операторе WHERE вычисление маскирующих выражений и связанных с
ними присваиваний является распределяемой работой
● в операторе FORALL вычисление элементов пространства итераций,
маскирующих выражений и присваиваний является распределяемой работой
● для конструкций atomic присваивание каждой скалярной величины
является отдельной работой
● для конструкций critical каждая критическая область является
отдельной работой
4.2.Комбинированные конструкции
Очень часто параллельная область не содержит ничего, кроме конструкции
разделения работы (т.е. конструкция разделения работы тесно вложена в
12
Страницы
- « первая
- ‹ предыдущая
- …
- 10
- 11
- 12
- 13
- 14
- …
- следующая ›
- последняя »