Участница:Larisayaryzheva/Программная реализация метода сопряжённых градиентов
Ссылки
Локальность данных и вычислений
Масштабируемость алгоритма и его реализации
Исследование масштабируемости реализации метода сопряжённых градиентов проводилось на суперкомпьютере "Ломоносов-2" для задач размерности [math]\displaystyle{ N \in \{2000, 5000\}. }[/math]
Число процессов изменялось в диапазоне [math]\displaystyle{ P \in \{ 1, 2, 4, 8, 16, 32, 48, 56\} }[/math].
На рис.1 представлен график зависимости времени работы алгоритма [math]\displaystyle{ T(N,P) }[/math] от числа процессов и размеров матрицы. По результатам при увеличении числа процессов с 1 до 8 время уменьшается почти линейно, что соответствует сильной масштабируемости реализации. При увеличении числа процессов с 16 до 56 время уменьшается не так эффективно, а начиная с [math]\displaystyle{ P = 48 }[/math] (в случае [math]\displaystyle{ N=5000 }[/math]) время работы алгоритма начинает возрастать. Это связано с тем, что накладные расходы на коммуникации и глобальные редукции начинают преобладать над вычислительной работой на каждом процессе.
На рис.2 показана эффективность распараллеливания [math]\displaystyle{ E(N,P) }[/math] в зависимости от числа процессов и размеров матрицы. Эффективность распараллеливания для [math]\displaystyle{ N=2000 }[/math] снижается медленнее, чем для [math]\displaystyle{ N=5000 }[/math]. Это объясняется меньшим объемом вычислений на процесс и более ранним влиянием задержек на коммуникацию.