stringtranslate.com

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

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

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

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

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

Ссылки

  1. ^ Куканов, Алексей (2008-03-04). "Почему простой тест может вызвать параллельное замедление" . Получено 2015-02-15 .

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