Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
авс!.docx
Скачиваний:
3
Добавлен:
20.09.2019
Размер:
1.48 Mб
Скачать

6. Векторные процессоры: структура аппаратных средств. Два типа векторных процессоров. Примеры

Векторным называется процессор, в системе команд которого есть векторные команды (все стандартные операции для векторов). Стандартные векторные процессоры выполняют операции над векторами очень большой размерности.

Основная идея векторных процессоров: операции с массивами данных.

Первая архитектура, отличная от однопроцессорной появилась в конце 1960-х. Векторные процессоры — основа первых супер-ЭВМ. Основные области применения — задачи, в которых данные были бы записаны в матричной форме (прогноз погоды, ядерная физика).

Пути построения векторных процессоров:

программный: пишется специальная библиотека программ, выполняющих векторные операции, ориентированная под конкретную имеющуюся платформу;

аппаратный: проектируется сначала скалярный компьютер+добавляются микрокоды векторных операций

изначально разрабатывалась векторная машина (с векторными командами).

Архитектура аппаратных средств:

  1. О перативная память. Это общее название включает в себя не только непосредственно оп-это может быть достаточно сложная иерархическая структура, включающая кэши и регистры. Причём, регистров может быть достаточно много — кроме скалярных, есть векторные регистры для хранения массивом. Быстродействие памяти во многом лимитирует быстродействие всего векторного процессора. Система памяти — это самая сложная подсистема векторного процессора. Для векторных компьютеров определён принцип расслоения памяти (для того, чтобы обеспечить суммарное быстродействие). Принцип расслоения памяти применяется и в обычных ПК, но там коэффициент расслоения небольшой. А в векторных процессорах коэффициент расслоения самый высокий на фоне других систем: 64, 128, 256. Всё это делается для того, чтобы запросное число (количество данных, поступающих из памяти за один цикл обращения) было как можно больше (хотя бы порядка ~ 100 или нескольких сотен). Требования к оперативной памяти достаточно высоки.

  2. Скалярный процессор. Выполняет все функции обычного процессора (обрабатывает поток команд и имеет все необходимые устройства для выполнения скалярных операций) + дополнительные функции: распознавая наличия векторной команды (передаёт её векторному процессору (3)).

  3. Векторный процессор. Базовые функции векторного процессора (при получении векторной команды):

    1. Декодирование

    2. Выработка системы сигналов для арифметического конвейера (6). Функция — выбор исполнительного устройства.

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

    4. Сопровождение выполнения операции.

    5. Анализ состояния (по завершению операции).

  4. Контроллер векторной памяти. На основе логических адресов векторов выдаёт последовательность адресов для обращения к физической памяти чтение/запись результата. Передаёт в буферную память (5).

  5. Буферная память. Пассивное устройство. Нужно, т.к. поступают данные не равномерно во времени, а выдаются данные синхронно.

  6. А рифметический конвейер. Один или несколько конвейеров, выполняющих векторные операции. Это может быть либо сложный конвейер (настраиваемый), либо набор конвейеров.

Таблица занятости:

А — выборка векторной команды

В — передача векторной команды и её декодирование векторным контроллером.

С — начальная выборка данных (запись/чтение)

D — выполнение команды

E — окончательное запоминание (запись) — может занимать большое количество тактов.

F — завершение операции — очистка буферов/регистров, выставление признаков состояния.

Архитектура команд машинного уровня:

  1. Функция, которая д. б. выполнена.

  2. Операнды, которые д. б. использованы.

  3. Статус, который д. б.зафиксирован.

  4. С ледующая команда, которая д. б. исполнена.

ПРИМЕРЫ:

Специализированная машина ASC. (пример) Texas Instruments.

В основе ее лежит текстовый проц.

1. Сдвиговые операции векторов

2. Скалярное сложение векторов.

3. Операции по слиянию, сравнению и поиску.

Пример: векторные мини-суперкомп-ы компании Convex Computer Corporation.

7. SMP-архитектура. Достоинства, недостатки. Проблема масштабируемости. Пути совершенствования SMP. NUMA-архитектура. Области применения. Примеры.

SMP (Symmetric Multiprocessing)симметричная многопроцессорная система. Главная особенность систем SMP –наличие общей физической памяти, разделяемой всеми процессорами. SMP — система строится на основе высокоскоростной системной шины, к слотам которой подключаются функциональные блоки трех типов: Процессоры, ОП, подсистема ввода/вывода. Память является способом передачи сообщений между процессорами. Все вычислительные устройства при обращении к ОП имеют равные права и одну и ту же адресацию для всех ячеек памяти. (эффективный обмен данными с другими вычислительными устройствами). SMP система работает под управлением единой ОС. ОС автоматически распределяет процессы по процессорам, но возможна и явная привязка. SMP архитектура используется в серверах и рабочих станциях на базе процессоров Intel, Sun, IBM, HP.

Рис. Общая схема SMP-архитектуры

SMP система состоит из нескольких однородных процессоров и массива общей памяти. Каждая операция доступа к памяти интерпретируется как транзакция по шине процессоры-память. Слово «равноправный» означает, что каждый процессор может делать все, что любой другой. Каждый процессор может выполнять любую другую операцию ввода/вывода, прерывать другие процессоры и т.д. B SMP каждый процессор имеет по крайней мере одну собственную кэш-память (а возможно и несколько). Возникла задача обеспечения когерентности кэша. Когерентность кэшей поддерживается аппаратными средствами.

Рис. Типовая архитектура мультипроцессорной системы с общей памятью.

Проблема когерентности кэша:

Каждый процессор имеет собственную кэш-память. Наличие кэша необходимо для достижения хорошей производительности поскольку основная память DRAM работает слишком медленно по сравнению со скоростью процессоров. Кэш работает со скоростью процессора, но эта аппаратура дорогая.

Достоинства технологии однорангового доступа SMP:

1. Простота организации вычислительного процесса, т.к. все процессоры обращаются к единой памяти по одному алгоритму.

2. Эффективность организации программного кода задачи, которая обеспечивается системным программным обеспечением, так как в процессе генерации кода нет необходимости учитывать разнообразие размещения данных в ОП.

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

Недостатки:

1. Единый путь доступа к ОП, который становится узким местом, при увеличение числа процессоров в системе, т.е. достигается такой предельный трафик, при котором увеличение числа процессоров приводит к нелинейному росту производительности системы, либо, как предельный случай, к её снижению по причине конфликтных ситуаций возникающих на пути доступа к ОП. Попытка технологически решить эту проблему лишь отодвигает граничный трафик. Так архитектура с синхронной шиной доступа позволяла линейно увеличивать производительность системы в пределах до 8-ми процессоров. Пакетная организация системной шины, уменьшая количество взаимных блокировок, позволяет довести количество процессоров в системе до 16-ти. Технология crossbar, т.е. когда элементы вычислительной системы коммутируются напрямую друг с другом по протоколу точка-точка, позволила довести количество процессоров до 72-х. Однако, с увеличением количества коммутируемых элементов системы происходит резкий рост сложности crossbar  рост цены устройства.

2. Увеличение количества процессоров усложняет логическую часть ВС, которая отвечает за работу с кэшем, в частности за когерентность, что также влияет на производительность и цену системы.

Примеры компьютеров с SMP архитектурой: HP 9000 (до 32 процессоров), Sun HPC 100000 (до 64 проц.), Compaq AlphaServer (до 32 проц.)

М асштабируемость — это:

1) В узком смысле — возможность наращивания аппаратных средств SMP-систем.

2) В широком смысле — см. график.

N UMA (Non-Uniform Memory Access — «неравномерный доступ к памяти» или Non-Uniform Memory Architecture — «Архитектура с неравномерной памятью») — схема реализации компьютерной памяти, используемая в мультипроцессорных системах, когда время доступа к памяти определяется её расположением по отношению к процессору.

Особенности:

1) состоит из нескольких узлов;

2) ОП физически распределена, но логически общедоступна (это не кластер — в нем каждый процессор имеет доступ только к подключенной памяти, здесь же — доступ к памяти чужих узлов);

3) в зависимости от пути доступа к элементу данных, время доступа может существенно различаться;

Примеры реализации:

1) ccNUMA — кеш-когерентные системы с распределенной разделяемой памятью (NUMA-компьютеры используют специальные аппаратные решения для достижения когерентности кеша).

2) COMA (Cache Only Memory Architecture). В COMA вводится «притягивающая» память — более быстродействующая, но меньшего размера, чем ОП (среднее между кэш и ОП). Есть стек. Эта память по объему больше, чем кэш L3. Реализация — на динамической памяти. Выполняет также задачи обеспечения когерентности.

3 ) NUMA-Q — архитектура промышленного сервера. NUMA-Q — реализация компанией Sequent архитектуры CC-NUMA. Элементарным блоком платформы NUMA-Q служит квод (NUMA-Q означает CC-NUMA с кводами), в котором объединены четыре процессора, блок разделяемой памяти и шина PCI с семью слотами. В традиционном смысле память в каждом кводе не является локальной. Скорее, это одна треть адресного пространства физической памяти, которая имеет собственный адресный диапазон. Адресная карта распределяется по памяти равномерно, при этом каждый квод содержит смежную часть адресного пространства.

8. MPP-архитектура. История развития. Основные принципы. Концепция, архитектура, характеристики суперкомпьютера Intel Paragon

Система с массовым параллелизмом. В основе лежал транспьютер — мощный универсальный процессор, особенностью которого было наличие 4 линков (коммуникационные каналы связи). Каждый линк состоит из двух частей, служащих для передачи информации в противоположных направлениях, и используется как для соединения транспьютеров между собой, так и для подключения внешних устройств. Проц-ры обмен-ся между собой данными. После передачи байта данных пославший его транспьютер ожидает получения подтверждающего сигнала, указывающего на то, что принимающий транспьютер готов к дальнейшему приему информации. Большая прикладная задача разбивается на процессы (на отдельный проц-р).

MPP система нач-ся со 128 проц-в. Если число проц-в < 64 то это точно не MPP, хотя тоже оборудование, тот же компилятор. Сообщения пересылаются через ряд проц-в. Нет узкого горлышка как у SMP. Впервые создание MPP систем обсуждалось в 1977г.

Достоинство: хорошая масштабируемость: в отличие от SMP-систем, в машинах с раздельной памятью каждый процессор имеет доступ только к своей локальной памяти, в связи с чем не возникает необходимости в потактовой синхронизации процессоров.

Недостатки:

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

2)каждый процессор может использовать ограниченный объем локального банка памяти;

3) высокая цена ПО для массово-параллельных систем с раздельной памятью.

Рассмотрим MPP систему Paragon (Intel): Таких систем было выпущено несколько сотен (первая – в 1993г.), причем каждая из них была не похожа на другую (кол-во проц-в, размер ОП). Для реализации использовались проц-ры i860.

MRC (маршрутизатор) — набор портов, которые могут связываться между собой и к каждому маршрутизатору может подключаться компьютер. Node — процессные узлы. 3 типов: 1)вычислительные 2) сервисные (UNIX-вые возможности для разработки прог-м, т.е. узлы для взаимодействия программиста). 3) узлы в/в (могут подключаться либо к общим ресурсам (дисковым), либо через них реализуется интерфейс с др. сетями).

Схема процессорного ядра: 1) Исполнительный монитор (позволяет отлаживать, контролировать, записывать работу узла). 2) Процессор приложений 3) ОП (32-64Mb) 4)Машины передачи данных (2 шт.) Одна на прием др. на передачу. 5) процессор сообщений (i860) 6) Контроллер сетевого интерфейса (порты которые выходят на MRC) 7) порт расширения, к которому через интерфейсные карты могли подключаться: 8)Интерфейс в/вв 9) к которому подключалось либо ЛВС, либо ЖД.

Число процессоров для Paragon достигало 5000-8000.

Примерами MPP систем можно упомянуть: IBM RS/6000 SP, NCR WorldMark 5100M (До 128 узлов, 4096 процессоров).

Рис. Архитектура Intel PARAGON XP

Рис. Процессорный узел PARAGON

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]