Классы параллельных систем
I. Векторно-конвейерные компьютеры (PVP). Имеют MIMD-архитектуру (множество инструкций над множеством данных).
Основные особенности:
- конвейерные функциональные устройства;
- набор векторных инструкций в системе команд;
- зацепление команд (используется как средство ускорения вычислений).
Характерным представителем данного направления является семейство векторно-конвейерных компьютеров CRAY.
Рассмотрим, например, суперкомпьютер CRAY Y-MP C90, имеющий следующие характеристики:
- Максимальная конфигурация - 16 процессоров, время такта - 4,1 нс, что соответствует тактовой частоте почти 250 МГц.
- Разделяемые ресурсы процессора:
- Оперативная память (ОП) разделяется всеми процессорами и секцией ввода/вывода, разделена на множество банков, которые могут работать одновременно.
- Секция ввода/вывода. Компьютер поддерживает три типа каналов с разной скоростью передачи:
Low-Speed Channels - 6 Мбайт/с
High-Speed Channels - 200 Мбайт/с
Very High-Speed Channels - 1800 Мбайт/с
- Секция межпроцессорного взаимодействия содержит регистры и семафоры, предназначенные для передачи данных и управляющей информации.
- Вычислительная секция процессора состоит из:
- регистров (адресных, скалярных, векторных);
- функциональных устройств;
- сети коммуникаций.
- Секция управления.
Команды выбираются из ОП блоками и заносятся в буфера команд.
- Параллельное выполнение программ.
Все основные операции, выполняемые процессором - обращение в память, обработка команд и выполнение инструкций - являются конвейерными.
II. Массивно-параллельные компьютеры с распределенной памятью. Объединяется несколько серийных микропроцессоров, каждый со своей локальной памятью, посредством некоторой коммуникационной среды.
Достоинств у такой архитектуры много: если нужна высокая производительность, то можно добавить еще процессоров; если ограничены финансы или заранее известна требуемая вычислительная мощность, то легко подобрать оптимальную конфигурацию и т.д.
Каждый процессор имеет доступ лишь к своей локальной памяти, а если программе нужно узнать значение переменной, расположенной в памяти другого процессора, то задействуется механизм передачи сообщений.
Блоки целочисленных операций в обеих группах идентичны не полностью. Одна из них содержит блок умножения, а вторая - специальную логику для обработки движущихся изображений (MPEG). Для этого набор команд Alpha был дополнен пятью новыми командами. Самая интересная из них - PERR - служит для оценки движения, т.е. выполнения задачи, возникающей как при сжатии, так и декомпрессии MPEG. Команда PERR выполняет работу девяти обычных инструкций. Таким образом, процессор 21264 может декодировать видеопоследовательности MPEG-2, а также DVD-аудиоданные AC-3 в режиме реального времени без использования дополнительных периферийных устройств.
В процессоре 21264, в отличие от его предшественников практически полностью реорганизована иерархия кэш-памяти. Он снабжен одним 64-Кбайт кэшем первого уровня (L1) для инструкций и еще одним 64-Кбайт кэшем первого уровня для данных; оба являются двукратно-ассоциативными. Кэш-память второго уровня (L2) была вынесена за пределы чипа - к ней можно обращаться через 128-бит backside-шину.
Сравнительные характеристики Alpha 21164 и 21264 приведены в табл. 10.1.
Тактовая частота, МГц | 600 | 600 |
Кэш L1 | Емкость:8(I)+8(D) | Емкость: 64(I)+64(D) |
Блокируется при числе непопаданий, равном | 2 | 8 |
Число ФИУ | 4 | 6 |
Емкость файла | 32 (I) | 80 (I), 2 копии |
Регистров | 32 (FP) | 72 (FP) |
Переименование регистров | нет | да |
Внеочередное выполнение команд | нет | да |
Динамическое предсказание переходов | да | усовершенствованное |
Шина верхнего кэша | системная | выделенная |
Поддержка мультимедиа | нет | да |
Число транзисторов | 9,3 млн | 15,2 млн |
Площадь, мм2 | 298 | 302 |