Параллельное замедление - Parallel slowdown

Диаграмма времени выполнения программы (показана синим цветом) и ускорения программы (показана красным цветом) реальной программы с неоптимальным распараллеливанием. Пунктирные линии показывают оптимальное распараллеливание - линейное увеличение ускорения и линейное уменьшение времени выполнения программы. Обратите внимание, что в конечном итоге время выполнения увеличивается с увеличением количества процессоров (и ускорение также уменьшается). Это параллельное замедление.

Параллельное замедление - это явление в параллельных вычислениях, когда распараллеливание параллельного алгоритма за пределами определенной точки заставляет программу работать медленнее (требуется больше времени для выполнения до завершения).

Параллельное замедление обычно является результатом узкого места в системе связи. По мере добавления дополнительных процессорных узлов каждый обрабатывающий узел тратит все больше времени на обмен данными, чем на полезную обработку. В какой-то момент накладные расходы связи, создаваемые добавлением другого узла обработки, превышают увеличенную вычислительную мощность, которую обеспечивает узел, и происходит параллельное замедление.

Параллельное замедление происходит, когда алгоритм требует значительного взаимодействия, особенно промежуточных результатов. Некоторые проблемы, известные как слишком параллельные проблемы , не требуют такого взаимодействия, и поэтому на них не влияет замедление.

Ссылки

Смотрите также

  • Мифический человек-месяц , аналогичная ситуация для команды программистов, где на продуктивность влияет человеческое общение.