ВУЗ:
Составители:
Определим, какая должна быть максимальная доля / последовательных вы-
числений в программе, чтобы было возможно получить наперед заданное ускорение
счета S с максимальным коэффициентом распараллеливания К
п
. Для этого выразим из
закона Амдала долю последовательных вычислений:
)1(*
pS
Sp
f
, (1.5)
Из соотношения (1.5) видно, что для того, чтобы допустить наличие последо-
вательных вычислений в программе (f должно быть больше 0), число процессоров р
должно быть больше предполагаемого ускорения S. При этом условии максимальный
коэффициент распараллеливания К
п
получается при числе процессоров p=S+1.
Таким образом, доля последовательных вычислений должна составлять не
более
S
f
2
1
. (1.6)
Соотношение (1.6) определяет очень важное следствие из закона Амдала.
Для того чтобы ускорить программу в q pаз, необходимо ускорить не менее, чем
q
2
1
1
-ю часть программы. Например, чтобы получить ускорение в 100 раз,
необходимо распараллелить 99,99% всей программы.
Кроме алгоритмического распараллеливания, для того чтобы с помощью
нескольких обрабатывающих устройств решить задачу, имеющую параллельные
ветви, необходима соответствующая организация процесса, которая определяет пути
решения задачи и вырабатывает необходимую информацию о готовности каждой
ветви. Однако все это относительно легко реализовать тогда, когда известна
достаточно точно длительность выполнения каждой ветви. На практике это бывает
крайне редко: в лучшем случае имеется та или иная временная оценка. Поэтому
организация оптимального или близкого к оптимальному графика работы является
достаточно сложной задачей.
Определим, какая должна быть максимальная доля / последовательных вы- числений в программе, чтобы было возможно получить наперед заданное ускорение счета S с максимальным коэффициентом распараллеливания Кп. Для этого выразим из закона Амдала долю последовательных вычислений: pS f S * ( p 1) , (1.5) Из соотношения (1.5) видно, что для того, чтобы допустить наличие последо- вательных вычислений в программе (f должно быть больше 0), число процессоров р должно быть больше предполагаемого ускорения S. При этом условии максимальный коэффициент распараллеливания Кп получается при числе процессоров p=S+1. Таким образом, доля последовательных вычислений должна составлять не более 1 f 2 . (1.6) S Соотношение (1.6) определяет очень важное следствие из закона Амдала. Для того чтобы ускорить программу в q pаз, необходимо ускорить не менее, чем 1 1 2 -ю часть программы. Например, чтобы получить ускорение в 100 раз, q необходимо распараллелить 99,99% всей программы. Кроме алгоритмического распараллеливания, для того чтобы с помощью нескольких обрабатывающих устройств решить задачу, имеющую параллельные ветви, необходима соответствующая организация процесса, которая определяет пути решения задачи и вырабатывает необходимую информацию о готовности каждой ветви. Однако все это относительно легко реализовать тогда, когда известна достаточно точно длительность выполнения каждой ветви. На практике это бывает крайне редко: в лучшем случае имеется та или иная временная оценка. Поэтому организация оптимального или близкого к оптимальному графика работы является достаточно сложной задачей.
Страницы
- « первая
- ‹ предыдущая
- …
- 22
- 23
- 24
- 25
- 26
- …
- следующая ›
- последняя »