Таблица 1
Максимальное ускорение параллельного кода
Распараллеленные
операции
Доля параллельного
кода
Максимальное ускорение
4 модуля 16 модулей 64 модуля
1
95,3 %
3,5
9,4
16,2
1, 2
98,2 %
3,8
12,6
30,0
1, 2, 3
99,5 %
3,9
14,9
48,7
Для вычислений с использованием небольшого числа вычисли-
тельных модулей максимальные значения ускорений близки. Но при
использовании системы с десятками вычислительных модулей распа-
раллеливание операций 2 и 3 дает значительный вклад в ускорение,
несмотря на то что трудоемкость этих операций составляют вместе
лишь малую долю трудоемкости операции 1 (приблизительно 4,4%).
На рис. 6 для программного комплекса POLARA представлена за-
висимость ускорения от числа вычислительных ядер при распарал-
леливании операций 1, 2 и 3 алгоритма, полученная при решении
одной весьма сложной с вычислительной точки зрения задачи расчета
обтекания профиля под фиксированным углом атаки. Для сравнения
показано максимальное значение ускорения для случаев распаралле-
ливания только операции 1, операций 1, 2 и операций 1, 2, 3.
Реальное ускорение при распараллеливании операций 1, 2, 3 близко
к оценке по закону Амдала для распараллеливания только операций 1,
2 (сказывается наличие пересылок данных, затрат на синхронизацию
вычислений и прочих “накладных расходов”), поэтому можно сделать
вывод о том, что распараллеливание операции 3 важно для достижения
высокой эффективности, хотя ее трудоемкость крайне мала — всего
около 1,3%.
Рис. 6. Реальное ускорение и оценки по закону Амдала (внутреннее распарал-
леливание)
ISSN 1812-3368. Вестник МГТУ им. Н.Э. Баумана. Сер. “Естественные науки”. 2012. № 4
93