ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 25.12.2021
Просмотров: 2445
Скачиваний: 7
Контрольные вопросы 5 5 1
5. Дайте характеристику плюсов и минусов кольцевой топологии сети. Какие ва-
рианты этой топологии практически используются?
6. Проведите сравнительный анализ звездообразной и древовидной топологий
сети.
7. Выполните-сравнительный анализ известных вариантов решетчатой тополо-
гии сети.
8. Поясните смысл топологии k-ичного n-куба сети. Как строится такой куб?
9. Дайте сравнительную характеристику блокирующих и неблокирующих много-
уровневых сетей.
10. Проведите сравнительный анализ одношинной и многошинной топологий ди-
намических сетей, акцентируя их сильные и слабые стороны.
И. Сравните популярные разновидности «баньян»-сетей: «Омега», «Дельта»-. Мож-
но ли причислить к этому классу сети Бенеша, и если можно, то почему?
12. Дайте развернутое объяснение отличий топологии Клоша от «баньян»-сетей.
Можно ли найти у них сходные черты, и если можно, то какие?
13. С какой топологией сходна организация двоичной n-кубической сети с косвен-
ными связями? Ответ обоснуйте, приведя конкретный пример.
14. Охарактеризуйте смысл топологии на принципе базовой линии. Изобразите
структуру соответствующей сети на 20 входов.
Глава 13
Вычислительные системы
класса SIMD
SIMD-системы были первыми вычислительными системами, состоящими из боль-
шого числа процессоров, и среди первых систем, где была достигнута производи-
тельность порядка GFLOPS. Согласно классификации Флинна, к классу SIMD
относятся ВС, где множество элементов данных подвергается параллельной, но
однотипной обработке. SIMD-системы во многом похожи на классические фон-
неймановские ВМ: в них также имеется одно устройство управления, обеспечива-
ющее последовательное выполнение команд программы. Различие касается ста-
дии выполнения, когда общая команда транслируется множеству процессоров
(в простейшем случае — АЛУ), каждый из которых обрабатывает свои данные. На
рис. 13.1 показаны приблизительные характеристики производительности неко-
торых типов вычислительных систем класса SIMD.
Ранее уже отмечалась нечеткость классификации Флинна, из-за чего разные
типы ВС могут быть отнесены к тому или иному классу. Тем не менее в настоящее
Рис. 1 3 . 1 . Производительность SIМО-систем как функция их типа и количества процессоров
Векторные и ввкторно-конвейерные вычислительные системы 5 5 3
время принято считать, что класс SIMD составляют векторные (векторно-конвей-
ерные), матричные, ассоциативные, систолические и VLIW-вычислительные сис-
темы. Именно эти ВС и будут предметом рассмотрения в настоящем разделе.
Векторные и векторно-конвейерные
вычислительные системы
Хотя производительность ВС общего назначения неуклонно возрастает, по-пре-
жнему остаются задачи, требующие существенно большей вычислительной мощ-
ности. К таким, прежде всего, следует отнести задачи моделирования реальных
процессов и объектов, для которых характерна обработка больших регулярных
массивов чисел в форме с плавающей запятой. Такие массивы представляются
матрицами и векторами, а алгоритмы их обработки описываются в терминах мат-
ричных операций. Как известно, основные матричные операции сводятся к одно-
типным действиям над парами элементов исходных матриц, которые, чаще всего,
можно производить параллельно, В универсальных ВС, ориентированных на скаляр-
ные операции, обработка матриц выполняется поэлементно и последовательно. При
большой размерности массивов последовательная обработка элементов матриц за-
нимает слишком много времени, что и приводит к неэффективности универсальных
ВС для рассматриваемого класса задач. Для обработки массивов требуются вычис-
лительные средства, позволяющие с помощью единой команды производить действие
сразу над всеми элементами массивов — средства
векторной обработки.
Понятие вектора и размещение данных в памяти
В средствах векторной обработки под
вектором
понимается одномерный массив
однотипных данных (обычно в форме с плавающей запятой), регулярным образом
размещенных в памяти ВС. Если обработке подвергаются многомерные массивы,
их также рассматривают как векторы. Такой подход допустим, если учесть, каким
образом многомерные массивы хранятся в памяти ВМ Пусть имеется массив дан-
ных Л, представляющий собой прямоугольную матрицу размерности 4x5 (рис. 13.2).
Рис. 13.2. Прямоугольная матрица данных
При размещении матрицы в памяти все ее элементы заносятся в ячейки с по-
следовательными адресами, причем данные могут быть записаны строка за строкой
или столбец за столбцом (рис. 13.3). С учетом такого размещения многомерных
массивов в памяти вполне допустимо рассматривать их как векторы и ориентиро-
вать соответствующие вычислительные средства на обработку одномерных мас-
сивов данных (векторов).
5 5 4 Глава 13. Вычислительные системы класса SIMD
Рис. 13.3. Способы размещения в памяти матрицы 4 x 5
Действия над многомерными массивами имеют свою специфику. Например,
в двумерном массиве обработка может вестись как по строкам, так и по столбцам.
Это выражается в том, с каким шагом должен меняться адрес очередного выбира-
емого из памяти элемента. Так, если рассмотренная в примере матрица располо-
жена в памяти построчно, адреса последовательных элементов строки различают-
ся на единицу, а для элементов столбца шаг равен пяти. При размещении матрицы
по столбцам единице будет равен шаг по столбцу, а шаг по строке — четырем. В век-
торной концепции для обозначения шага, с которым элементы вектора извлека-
ются из памяти, применяют термин
шаг по индексу
(stride).
Еще одной характеристикой вектора является число составляющих его элемен-
тов —
длина вектора.
Понятие векторного процессора
Векторный процессор —
это процессор, в котором операндами некоторых команд
могут выступать упорядоченные массивы данных — векторы. Векторный процес-
сор может быть реализован в двух вариантах. В первом он представляет собой до-
полнительный блок к универсальной вычислительной машине (системе). Во вто-
ром — векторный процессор — это основа самостоятельной ВС.
Рассмотрим возможные подходы к архитектуре средств векторной обработки.
Наиболее распространенные из них сводятся к трем группам:
* конвейерное АЛУ;
* массив АЛУ;
* массив процессорных элементов.
Последний вариант — один из случаев многопроцессорной системы, известной
как
матричная ВС.
Понятие векторного процессора имеет отношение к двум пер-
вым группам, причем, как правило, к первой. Эти две категории иллюстрирует
рис. 13.4 [200].
Векторные и векторно-конвейерные вычислительные системы 5 5 5
в
б
Рис. 13.4. Варианты векторных вычислений:
а
— с конвейерным АЛУ;
б —с
несколькими АЛУ
В варианте с конвейерным АЛУ (рис. 13.4, а) обработка элементов векторов
производится конвейерным АЛУ для чисел с плавающей запятой (ПЗ). Операции
с числами в форме с ПЗ достаточно сложны, но поддаются разбиению на отдель-
ные шаги. Так, сложение двух чисел может быть сведено к четырем этапам [200]:
г
д
Рис. 13.5. Обработка векторов:
а
— структура арифметического конвейера для чисел
с плавающей запятой; б — обозначение конвейера;
в —
обработка векторов
в конвейерном АЛУ; г— параллельная обработка векторов несколькими
конвейерными АЛУ;
д —
конвейерная обработка векторов
четырьмя АЛУ