Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ответы на экзамен ворд.doc
Скачиваний:
1
Добавлен:
09.09.2019
Размер:
646.66 Кб
Скачать

Вопрос19 в чем суть параллельного выполнения программы в процессорах с управлением потоком данных.

1.Использование исходного текста задачи в виде традиционной последовательной программы, записанной на языке последовательного программирования.

2. Использование понятий «активная» команда (готовая к выполнению) при наличии значений всех ее операндов или «пассивная» команда (не готовая к выполнению) - при отсутствии значения хотя бы одного из операндов.

3. Присваивание всем командам, зависящим только от исходных данных, состояния активности, перевод остальных команд из исходного пассивного состояния в активное состояние (то есть формирование подмножеств активных команд) в динамике вычислительного процесса путем учета количества операндов каждой команды, для которых вычислены значения в процессе решения задачи.

4. Одновременное (параллельное) начало реализации всех активных команд конкретного подмножества (при наличии необходимого количества функциональных блоков различных типов), либо некоторой части подмножества (при ограничениях на количественный состав функциональных блоков).

5. Итеративное выполнение п.4 (с окончанием параллельного выполнения программы по исчерпании всех пассивных команд).

21. Приведите суть принципа организации параллельного процесса на основе управления потоком данных

Суть принципа организации параллельного процесса на основе «управления потоком данных»:

1. Использование исходного текста задачи в виде традиционной последовательной программы, записанной на языке последовательного программирования.

2. Использование понятий «активная» команда (готовая к выполнению) при наличии значений всех ее операндов или «пассивная» команда (не готовая к выполнению) - при отсутствии значения хотя бы одного из операндов.

3. Присваивание всем командам, зависящим только от исходных данных, состояния активности, перевод остальных команд из исходного пассивного состояния в активное состояние (то есть формирование подмножеств активных команд) в динамике вычислительного процесса путем учета количества операндов каждой команды, для которых вычислены значения в процессе решения задачи.

4. Одновременное (параллельное) начало реализации всех активных команд конкретного подмножества (при наличии необходимого количества функциональных блоков различных типов), либо некоторой части подмножества (при ограничениях на количественный состав функциональных блоков).

5. Итеративное выполнение п.4 (с окончанием параллельного выполнения программы по исчерпании всех пассивных команд).

23. Дайте определение понятия «топология системы». Какие виды топологий системы Вы знаете

. К числу типовых топологий обычно относят следующие схемы коммуникации процессоров (см. рис. 1.1):

  • полный граф (completely-connected graph or clique)- система, в которой между любой парой процессоров существует прямая линия связи; как результат, данная топология обеспечивает минимальные затраты при передаче данных, однако является сложно реализуемой при большом количестве процессоров;

  • линейка (linear array or farm) - система, в которой каждый процессор имеет линии связи только с двумя соседними (с предыдущим и последующим) процессорами; такая схема является, с одной стороны, просто реализуемой, а с другой стороны, соответствует структуре передачи данных при решении многих вычислительных задач (например, при организации конвейерных вычислений);

  • кольцо (ring) - данная топология получается из линейки процессоров соединением первого и последнего процессоров линейки;

  • звезда (star) - система, в которой все процессоры имеют линии связи с некоторым управляющим процессором; данная топология является эффективной, например, при организации централизованных схем параллельных вычислений;

  • решетка (mesh) - система, в которой граф линий связи образует прямоугольную сетку (обычно двух- или трех- мерную); подобная топология может быть достаточно просто реализована и, кроме того, может быть эффективно используема при параллельном выполнении многих численных алгоритмов (например, при реализации методов анализа математических моделей, описываемых дифференциальными уравнениями в частных производных);

  • гиперкуб (hypercube) - данная топология представляет частный случай структуры решетки, когда по каждой размерности сетки имеется только два процессора (т.е. гиперкуб содержит 2N процессоров при размерности N); данный вариант организации сети передачи данных достаточно широко распространен в практике и характеризуется следующим рядом отличительных признаков: