Векторно-конвейерные системы (ВКС)


Принцип: Имеется две типа систем высокопроизводительной числовой обработки:

1). Матричные системы.

2). Векторно-конвейерные системы.

Итак, имеется некоторый конвейер с несколькими стадиями. Данные берутся из памяти и подаются на конвейер, и результат выполнения возвращается в память:

Векторно-конвейерные системы (ВКС)

Рис.7.1.

Рассмотрим пример:

Предположим clip_image004,clip_image006и clip_image008 – вектора (или одномерные массивы чисел). Тогда векторной операцией будет поэлементное сложение чисел, составляющих эти вектора и присвоенные соответствующим элементам вектора С:

clip_image010

clip_image012, clip_image014

clip_image016, clip_image014[1]

два n-чтений из ОП, n-сложений, n-присвоений (запись).

память

Рис.7.2.

Эту схему можно усложнить. Пусть clip_image004[1],clip_image006[1], clip_image008[1]и clip_image021 – вектора.

clip_image010[1]

clip_image023.

clip_image025

Рис.7.3.

Особенностью ВКС должна быть перенастройка конвейера для различных выражений.

Рассмотрим архитектуру ВКС.

Архитектура ВКС

Рис.7.4. Архитектура ВКС

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

Пример:

clip_image029

Различают линейные и нелинейные конвейеры:

Линейный конвейер

Рис.7.5. Линейный конвейер

Нелинейный конвейер

Рис.7.6. Нелинейный конвейер

Нелинейный конвейер позволяет организовать вычисление рекуррентных выражений:

clip_image035 (без обратной связи)clip_image037

Рассмотрим сцепление и распределение данных:

Сцепление данных

Рис.7.7. Сцепление данных

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

Распределение данных

Рис.7.8. Распределение данных

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

В мире существует несколько десятков Супер-ЭВМ, построенных по векторно-конвейерному принципу. Понятно, что эти Супер-ЭВМ очень дорогостоящие. Приведем таблицу наиболее известных типов Супер-ЭВМ, организованных по векторно-конвейерному принципу:

Таблица 7.1.

Модель Супер-ЭВМ

Произв.

В мегафлопп[1]

Число ПЭ

Длительность

такта ( в нс )

Объем цикла

Элементная база

Для вект. Операций

Для скал.

Операций

CRAY-2

487

4

4.1

4.1

1Г/38нс

ЭСЛ[2]

СИС[3]

0,35нс[4]

VP2000

Fujitsu

533

1

7.5

15.0

256Мб/

60нс

ЭСЛ

БИС

0,35нс

S-810

Hitachi

840

1

14.0

28.0

256Мб/ 70нс

ЭСЛ

БИС

0,35нс

CYBER-205

CDC

40

2

20.0

40.0

1Г/50нс

ЭСЛ

БИС

0,75нс

Пример ВКС:

clip_image043

Рис.7.9. Супер-ЭВМ CRAY

Конструктивной особенностью Супер-ЭВМ CRAY является то, что расстояние между функциональными узлами сказывается на его быстродействии. Поэтому она сделана в виде такого тора.

CRAY

Рис.7.10.

В связи с тем, что если сделать ее вытянутую в линию, то окажется, что между двумя концами распространение сигнала столь длительное, что очень сложно синхронизировать работу частей, находящихся наиболее удаленно. Поэтому сделали в виде «бублика», чтобы эту проблему решить. Получили макс. длину связи 6.2 м.


[1] 1 мегафлопп – это 1млн. операций в сек.

[2] ЭСЛ – эмитерно-связанная логика

[3] СИС – средняя интегральная схема

[4] 0,35нс – базовый эл-нт переключается за 0,35нс