
- •1. Оценка максимально достижимого параллелизма, закон Амдаля. Понятие ускорения и эффективности параллельных алгоритмов. Анализ масштабируемости параллельных вычислений.
- •2. Топология сети передачи данных. Примеры элементарных топологий, основные характеристики. Алгоритмы маршрутизации и методы передачи данных.
- •3. Классификация многопроцессорных вычислительных систем. Понятие пропускной способности и латентности, методы их измерения.
- •5. Общие свойства параллельных алгоритмов. Полная и неполная параллельность. Особенности выбора способов распараллеливания.
- •6. Основные алгоритмические методы распараллеливания задач. Векторно-конвейерные и векторно-параллельные системы
- •7. Планирование выполнения заданий. Общая схема параллельных вычислений при обслуживании потока заявок.
- •8. Понятие балансировки нагрузки процессов. Статическая и динамическая балансировка.
- •9. Анализ трудоемкости основных операций передачи данных на примере выполнения парных межпроцессорных обменов и коллективной операции широковещательной передачи данных.
- •1) Передача неделимых данных от одного процессора всем остальным процессорам сети
- •2) Передача пакетов данных от одного процессора всем остальным процессорам сети
- •3) Передача неделимых данных от всех процессоров всем процессорам сети
- •10. Двоичный код Грея и его использование на примере отображения некоторых топологий коммуникационной среды.
9. Анализ трудоемкости основных операций передачи данных на примере выполнения парных межпроцессорных обменов и коллективной операции широковещательной передачи данных.
1) Передача неделимых данных от одного процессора всем остальным процессорам сети
Операция передачи данных от одного процесса всем является одним из наиболее часто выполняемых коммуникационных действий. В зависимости от объема данных процессы могут выполнять передачу неделимых (атомарных) блоков информации или передачу в виде пакета блоков. Рассмотрим временные характеристики выполнения широковещательной передачи данных для неделимых блоков и пакета блоков на примере некоторых топологий сети.
Обозначим через
m - объем передаваемых данных в некоторых единицах, например в байтах,
р- количество процессоров,
tн - время начальной подготовки сообщения для передачи, который включает поиск маршрута в сети, формирование буфера передачи и т.д.;
tс - время передачи служебных данных между двумя соседними процессорами (т.е. для процессоров, между которыми имеется физический канал передачи данных); к служебным данным может относиться заголовок сообщения, информацию для обнаружения ошибок передачи и т.д.;
tк - время передачи единицы данных по одному каналу передачи, длительность подобной передачи определяется пропускной способностью сети.
Передача сообщений для кольцевой топологии Процессор-источник рассылки может передать данных сразу двум своим соседям, которые, в свою очередь, приняв сообщение, организуют пересылку далее по кольцу. Время выполнения рассылки в этом случае будет определяться как
Для топологии решетки-тора, рассылка может быть выполнена в 2 этапа. На первом этапе выполняется передача сообщения всем процессорам сети, располагающимся на той же горизонтали решетки, что и процессор-источник; на втором этапе процессоры, получившие копию данных, рассылают сообщения по своим соответствующим вертикалям. Время выполнения рассылки в этом случае будет определяться как
Для гиперкуба рассылка может быть выполнена в N- этапной процедуры передачи. На первом этапе процессор-источник передает данные одному из своих соседей (например, по первой размерности) – в результате после первого этапа имеется два процессора, имеющих копию пересылаемых данных. На втором этапе два процессора, получившие данные, пересылают сообщение своим соседям по второй размерности и т.д. Время выполнения рассылки в этом случае будет определяться как
Лучшие показатели имеет топология типа гиперкуба.
2) Передача пакетов данных от одного процессора всем остальным процессорам сети
Для топологии кольца алгоритм рассылки может быть получен путем логического представления кольцевой структуры сети в виде гиперкуба. На первом этапе, процессор-источник сообщения передает данные процессору, находящемуся на расстоянии p/2 от исходного процессора. На втором этапе оба процессора, уже имеющие рассылаемые данные после первого этапа, передают сообщения процессорам, находящиеся на расстоянии p/4 и т.д. Время выполнения рассылки в этом случае будет определяться как
(при достаточно больших сообщениях, временем передачи служебных данных можно пренебречь).
Для топологии решетки-тора алгоритм рассылки аналогичен методу передачи неделимых сообщений. Время выполнения рассылки в этом случае будет определяться как
Для гиперкуба алгоритм рассылки алгоритм рассылки также аналогичен методу передачи неделимых сообщений.