ВУЗ:
Составители:
Рубрика:
- 30 -
тивов
send/receive
(послать/принять сообщение). При этом
send
может быть
вызван в любой момент, а
receive
задерживает выполнение программы до
момента реального поступления сообщения (т.н. блокирующие функции). В
MPI определен оператор
Barrier
, явным образом блокирующий выполнение
данного процесса до момента, когда все (из заданного множества) процессы
не вызовут
Barrier
. Функция синхронизации в T-системе (раздел 4.3.2) под-
держивается механизмом неготовых переменных, в системе программирова-
ния Linda (раздел 4.2) при отсутствии явной поддержки синхронизация про-
цессов несложно моделируется языковыми средствами.
Синхронизация может поддерживаться и аппаратно (например, барьерная
синхронизация в суперкомпьютере Cray T3, с помощью которой осуществля-
ется ожидание всеми процессами определенной точки в программе, после
достижения которой возможна дальнейшая работа, см. подраздел 2.4.1).
1.5 Возможное ускорение при параллельных
вычислениях (закон Амдаля)
Представляет интерес оценка величины возможного повышения произво-
дительности с учетом качественных характеристик самой исходно последо-
вательной программы.
Закон Амдаля (Gene Amdahl, 1967) связывает потенциальное ускорение
вычислений при распараллеливании с долей операций, выполняемых априори
последовательно. Пусть
f (0<f<1) – часть операций алгоритма, которую рас-
параллелить не представляется возможным; тогда распараллеливаемая часть
равна (1-f); при этом затраты времени на передачу сообщений не учитывают-
ся,
t
s
- время выполнения алгоритма на одном процессоре (последователь-
ный вариант), n – число процессоров параллельной машины.
При переносе алгоритма на параллельную машину время расчета распре-
делится так:
•
t
s
f ×
- время выполнения части алгоритма, которую распараллелить не-
возможно,
•
nf
t
s
×−
)1(
- время, затраченное на выполнение распараллеленной части
алгоритма.
Время
t
p
, необходимое для расчета на параллельной машине с n процес-
сорами, равно (см. рис.4)
nff
t
t
t
ssp
/)1(
×
−+×=
,
а ускорение времени расчета
- 30 -
тивов send/receive (послать/принять сообщение). При этом send может быть
вызван в любой момент, а receive задерживает выполнение программы до
момента реального поступления сообщения (т.н. блокирующие функции). В
MPI определен оператор Barrier, явным образом блокирующий выполнение
данного процесса до момента, когда все (из заданного множества) процессы
не вызовут Barrier. Функция синхронизации в T-системе (раздел 4.3.2) под-
держивается механизмом неготовых переменных, в системе программирова-
ния Linda (раздел 4.2) при отсутствии явной поддержки синхронизация про-
цессов несложно моделируется языковыми средствами.
Синхронизация может поддерживаться и аппаратно (например, барьерная
синхронизация в суперкомпьютере Cray T3, с помощью которой осуществля-
ется ожидание всеми процессами определенной точки в программе, после
достижения которой возможна дальнейшая работа, см. подраздел 2.4.1).
1.5 Возможное ускорение при параллельных
вычислениях (закон Амдаля)
Представляет интерес оценка величины возможного повышения произво-
дительности с учетом качественных характеристик самой исходно последо-
вательной программы.
Закон Амдаля (Gene Amdahl, 1967) связывает потенциальное ускорение
вычислений при распараллеливании с долей операций, выполняемых априори
последовательно. Пусть f (0Страницы
- « первая
- ‹ предыдущая
- …
- 28
- 29
- 30
- 31
- 32
- …
- следующая ›
- последняя »
