Составители:
Рубрика:
слагаемые (например, после выборки SUM одной нитью (процессо-
ром) оказалось, что SUM уже выбрана другой нитью, и в результате
к SUM окажется добавленным лишь второе слагаемое, а первое — не
добавлено). Эту ситуацию исправляет директива ATOMIC
!$OMP ATOMIC
SUM=SUM+expr
где expr — локальная переменная, вычисляемая каждой нитью.
10.4. Гарантированное поддержание когерентности
Вычислительная система может иметь сложную иерархию раз-
личных областей памяти, когерентность которых поддерживается
автоматически. Однако, в некоторых случаях пользователь должен
иметь особые гарантии того, что память, к которой он обращает-
ся, своевременно обновлена (синхронизирована). Для этого служит
директива
!$OMP FLASH[список переменных]
Применение этой директивы приводит к синхронизации перечис-
ленных в списке переменных в том смысле, что все последние изме-
нения этих переменных будут внесены во все их копии (установлена
полная когерентность).
§ 11. Привлекательные черты технологии Open MP
Привлекательные черты Open MP состоят в следующем.
1. Технология Open MP параллельного программирования по-
строена так, что она не противоречит идеологии последовательно-
го программирования: узкие участки последовательной программы
можно распараллелить.
2. Удобство этой технологии в том, что пользователь имеет
возможность начинать свою работу в привычной обстановке разра-
ботки последовательной программы, не задаваясь первоначально
вопросами, связанными с распараллеливанием.
3. На этапе распараллеливания программа лишь расширяется
— обогащается комментариями — текстами, относящимися к про-
грамме Open MP.
146
Страницы
- « первая
- ‹ предыдущая
- …
- 143
- 144
- 145
- 146
- 147
- …
- следующая ›
- последняя »
