Новости
О Центре
Кластер
Обучение
Основной курс по параллельному программированию
Учебные курсы
Магистратура
Дополнительное образование
Работы студентов
Библиотека
Исследования
Конференции
Полезные ссылки
NVIDIA
Контакты
О сайте
Имя:
Пароль:
запомнить:
Забыли пароль? Регистрация

Анализ эффективности

Сложность проведения поиска в ширину из одной вершины составляет O(m), где m — число рёбер в компоненте сильной связности этой вершины. Для облегчения расчётов примем за m число рёбер во всём графе. Тогда время расчёта для всего графа составляет nαm, где n – число вершин в графе. Предполагая, что вершины распределяются по процессам строго поровну, получаем время работы на p процессорах Время параллельных вычислений.

Осуществляемая при параллелизации коммуникация состоит из рассылки исходных данных всем процессам в начале (Broadcast) и сборки частичных результатов в конце (Gather). Размер рассылаемых данных пропорционален 2n+m, размер принимаемых — kn (k — размер структуры article_metrics в реализации). Таким образом время передачи данных (с учётом полной латентности lВремя коммуникации.

В результате ускорение будет составлять: Ускорение

А эффективность:Эффективность.

Видно, что эффективность увеличивается при увеличении размера графа и уменьшается при увеличении числа потоков.

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

Новости

22.10.2012
04.09.2012
05.04.2012
06.03.2012
02.03.2012