Параллельные вычисления. Баканов В.М. - 30 стр.

UptoLike

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

- 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