При параллельных вычислениях скорость обработки данных увеличивается за счёт совмещения прежде разнесённых во времени операций. 1 Например, если одно устройство выполняет одну операцию за единицу времени, то система из нескольких таких устройств, способных работать одновременно, может выполнить ту же тысячу операций уже не за тысячу, а за двести единиц времени. 1
Также параллельный алгоритм уменьшает объём данных, используемых каждым процессором, и повышает эффективность использования кэш-памяти каждого процессора. 2 Оптимальная работа с кэш-памятью может сильно увеличить быстродействие алгоритма. 2
Однако на практике ускорение при параллельных вычислениях может быть меньше ожидаемого. 4 Это обусловлено двумя факторами: свойствами алгоритма программы и техническими свойствами вычислительной системы. 4
Например, при разбиении большой задачи на более мелкие подзадачи, которые должны выполняться параллельно на различных процессорах, часто возникает ситуация, когда нужно ждать завершения выполнения некоторого этапа всеми процессорами. 4 В этом случае полное время выполнения будет определяться самой медленной подзадачей. 4