Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

khor32

.pdf
Скачиваний:
26
Добавлен:
29.02.2016
Размер:
8.16 Mб
Скачать

4.2. Конвейерные системы типа память-память»

Ясно, что для хранения векторов A, в, ср(А, В) требуются области

памяти одинаковой емкости. Если векторы n-элементные, то для хранения любого из векторов используется n ячеек памяти.

4.2.1. Система STAR-100

 

Разработка конвейерной ВС STAR-100 (STAR

STring ААгау

computer векторный компьютер) осуществлялась фирмой CDC c 1965 по

1973 г. Система была анонсирована в 1970 г., a первая ее поставка была проведена в августе 1973 г. Быстродействие ВС 10к опер./c, стоимость 15 млн долл.

Система sТАR-100 создавалась c учетом языка программирования

APL (A Programming Language). Язык APL (или АПЛ) диалоговый язык

программирования, характеризуется развитыми средствами работы c регу-

лярными структурами данных (векторами, матрицами, массивами) и бога-

тым набором базовых операций и компактностью записи.

Вычислительная система sTAR-100 состояла из двух подсистем [5, 13] : первая осуществляла переработку данных, вторая функции операционной

системы. Ядром первой подсистемы являлся процессор, обрaзуемый из не-

скольких конвейеров. B типовых конфигурациях системы STAR-100 процессоры состояли из трех конвейеров : K 1 , K2 , К3 (рис. 4.3). Конвейеры бы-

ли специализированными: два из них (K 1 , K 2) служили для выполнения

векторных операций, a третий (К 3 )

для реализации операций над ска-

лярными операндами, т. е. K 1 и k2

конвейеры (Floating-Point Раiг

Pipelines), каждый из которых служил для выполнения операций с плавающей запятой над парами векторов данных, КЗ конвейер (string data pipeline), предназначавшийся для обработки обычных операндов, не органи-

зованных в векторы. Конвейеры К 1 и К2 выполняли основной объем вы-

числений, следовательно, они определяли уровень быстродействия системы

STAR-100 в целом.

Конвейеры STAR-100 имели программируемую структуру (т. e. были c изменяемой конфигурацией), следовательно, в них можно было (на одном и том же множестве элементарных блоков обработки) выполнять различные арифметические операции. Однако. до начала новой операции конвейер следовало перенастроить (запрограммировать на выполнение очередной операции).

В конвейерах К 1 и К 2 путем введения служебного булевского векто-

ра была обеспечена избирательная обработка компонентов векторов-

операндов. Единица в i-м разряде булевского вектора означала, что опера-

153

4. Конвейерные вычислительным? системы

Процессор

s s s

К 1

К3

УУК

УУП

i

Буферная память

 

 

 

 

 

 

УУдп

 

 

oп

 

кпдп

мк 1

 

 

 

128 бит

16 бит С еть из девяти мини-ЭМ

 

 

 

 

(распределенная ОС)

Рис. 4.3. Функциональная структура системы STAR - 100:

К1 , К2, К3 — конвейеры; УУК — устройство управленi я командами; УУП — устройство

управления потоками; УУДП — устройство управления доступом к памяти; ОП — опера-

тивнaя память; КПДП — канал прямого доступа в память: МК — мультиплексный канал

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

B каждом конвейере была заложена воз: и1ожность реализации операции сложения, а в двух из них К 1 и К 2 gyпераций умножения и деления. Состав элементарных блоков обработки информации конвейеров был выбран c учетом распределения вероятностей использования микрооперации различных типов.

Каждый конвейер К i (i =1, 2, 3) мог вкл: ючать в себя приблизительно 30 блоков обработки информации. Все блоки работали параллельно, но каж-

дыи из них оперировал c вполне определенными элементами векторов данных либо со своими скалярными операндами.

Любой конвейер воспринимал б4-разряд оный код либо как один 64- разрядный операнд, либо как два 32-разрядны х операнда. Время выполнения операции над парой операндов в любом и з блоков конвейеров не превышало 40 нс. Следовательно, данные могли поступать в процессор (точнее, только в конвейеры К1 и К2) со скоростью 1ОЭ млн опер./c.

Система STAR-100 имела набор из 230 команд, из которых 65 команд предназначалось для работы c векторами данных и 130 команд для работы со скалярами.

154

4.2. Конвейерные системы типа «пaмять-пaмять»

Средства управления подсистемой переработки данных были представлены композицией из устройства управления командами (УУК), устройства управления потоками (УУП) и устройства управления доступом к па-

мяти (УУДП). Первое устройство (УУК) имело буфер опережающего просмотра команд (емкостью в четыре 5 12-разрядных суперслова) со стековьпи механизмом работы. Второе устройство (УУП) использовалось для управления потоками операндов и команд между УУДП, конвейерами и УУК.

Оперативная память пpеднaзначaлась для хранения программ и данных. Она была реализована на магнитных сердечниках и имела емкость 512-1024 K 64-разрядных слов, т. e. до 8 Мбайт. Память могла вктлочать в себя до 32 модулей и относилась к классу памятей c перемежающимися ад-

ресaми. Время цикла памяти было равно 1,28 мкс, однако допускались одновременные обращения к составляющим модулям.

Имелись четыре виртуальных канала обращения к памяти, которые реализовывались устройством управления доступом к памяти. Два канала использовались для чтения операндов (для каждого из конвейеров K 1 и K 2 , работавших параллельно, из памяти выбиралось по два б4-разрядны операнда); один для записи результатов (64-разрядный результат от каждого из конвейеров K 1 и K2 ); один для обмена информацией c устройствами

ввода-вывода (либо c одним быстродействующим устройством c полосой пропускания 128 бит, либо c восемью медленными устройствами в режиме разделения времени).

Буферная память введена вследствие того, что быстpодействие оперативной памяти было существенно ниже быстродействия процессора. Буферная память представляла собой совокупность регистров c временем цикла 40 нс. Назначение канала прямого доступа в память (КПДП) и муль-

типлексного канала (МК) следует из их названий и структуры связей между

устройствами ТАR-100 (см. рис. 4.3).

Операционная система (ОС) STAR- 100 относилась к классу распределенных. Ее функции, включая управление внешними запоминающими устройствами и устройствами ввода-вывода информации, реализовывались специальной вычислительной сетью из девяти мини-машин. Система про-

граммирования STAR-100 включала компиляторы c языков АРL-STAR, COBOL и FORTRAN.

Первый образец системы STAR-100 был установлен в Ливерморской

радиационной лаборатории им. Лоуренса (Lawrence Livermore Laboratory).

Были осуществлены поставки системы в правительственные организации и в армию США. Система STAR-100 использовалась для управления запуском антиракет в системе противоракетной обороны США; она широко применялась при решении сложных проблем науки, техники и экономики.

155

4. Конвейерные вычислительные системы

Следует заметить, что вычислительная с истема STAR-100 допускала модификации: в ней можно было изменять число конвейеров, число и состав

внешних устройств, емкость оперативной и внешней памяти и т. д. Создава-

лись и усеченные варианты STAR-IB, a также; система SUPERSTAR (или

CDC 8600), которая в 1,5-4 раза превосходила по производительности STAR- 100 и была более компактной (реализована на более совершенных интегральных схемах).

4.2.2. Семейство систем 12YBER

Эволюция архитектуры STAR- 100 привела к созданию семейства кон-

вейерных систем CYBER-203 (1979) и CYBER-:205 (1981).

Остановимся на архитектурных особенностях систем семейства

CYBER . Архитёктура этих ВС не изменялась в процессе развития, т. e. была типа «память-память». Производительность системы CYBER-203

(или STAR-100А, как она первоначально называлась) также оставалась 100 млн опер./c. Эту систему можно было рассматривать как модернизированный вариант STAR- 100, она была конвейерной, имела ту же систему команд и полностью совместимое программное збеспечение. Однако в отли-

чие от STAR- 100 система CYBER-203 содержала обычный скалярный про-

цессор (вместо конвейера К 3 ), который обеспечивал шестикратное

увеличение быстродействия при скaлярной обработке информации. Емкость

оперативной памяти CYBER -203 была увеличе Ка до 16 Мбайт, скорость вы-

борки из памяти до 100 млрд бод (разряднссть слов б4). Элементнyю

базу системы CYBER-203 составляли БИС.

Система CYBER-205 обладала более совершенной архитектурой в сравнении c CYBER-203. Так, в ней допускалось варьирование числа кон-

вейеров (c изменяемой конфигурацией) от одного до четырех. Пиковая про-

изводительность ВС CYBER-205 достигала 200 млн опер./c, емкость опера-

тивной памяти 32 Мбайт.

Однако все конвейеры CYBER-205 могли работать только в унисон, т. е. все они могли выполнять одновременно только одну и ту же векторную опера-

цию (a не несколько различны). Следовательи.о, архитектура CYBER-205 в

целом представляла собой архитектуру SIMD.:В составе аппаратурно реали-

зованных векторных операций CYBER-205 имЕ :лись также триады

А + СLВ,

 

где A и В векторы; а скaляр; аВ

веi:тор, получаемый из A путем

умножения его компонентов на число а.

 

Система CYBER-205 могла выполнять триады почти c такой же ско-

ростью, как отыскание суммы или произведения векторов.

156

первая модель,

4.3.Конвейерные системы типа «регистр регистр»

4.3.Конвейерные системы типа «регистр-регистр»

Наряду c фирмой CDC разработкой и производством конвейерныx ВС

занималась фирма Cray Research Inc., которая была основана в 1972 г. главным конструктором систем CDC 6600 и 7600 Сеймором P. Креем (Seymour R. Cray, 1925— 1996). Однако конвейерные ВС фирмы Cray Research существенно отличались по архитектуре от систем STAR-100, CYBER-203 и CYBER-205.

Архитектура первых систем Cray относилась к типу «регистр-ре-

гистр» (рис. 4.4). Архитектура такого типа предопределяет в составе ВС векторные регистры, каждый из которых способен хранить вектор-операнд.

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

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

Векторные регистры и рают почти такую же роль, как сверхоператив-

ная память КЭШ-память (Cache Memory) в обычных ЭВМ. Для повыше-

ния эффективности эксплуатации конвейерных ВС этого типа требуется как

можно более интенсивно использовать операнды, пока они находятся в век-

торных регистрах.

B рамках арxитектypной конщегтщш конвейерньх ВС типа <срегиттр-ре-

гистр» фирма Cray Research вьп усгила ряд совместим х моделей: Cray-i, Cray X-МР, Cray Y-МР, Cray С90, Cray Т90. B этом ряду только

т. e. Cray-i, была однопроцессорной, a остальные члены ряда мультипроцессорные ВС. Процессор в любой из этих систем ориентирован на реализацию

век-горных операций. Он по сyти являлся мультиконвейером, T. e. представлял-

., ., ., ся програл^пиируемои композицией из специализироват и х конвейеров.

Мультипроцессорные модели Cray X-МР, Cray Y-МР, Cray С90 и Cray Т90 называют также параллельно-векторными ВС или РУР-системами (РVР Рага11е1 Vector Processors).

Векгорные регистры

A

Конвейер

в

Оперативная

 

(р(А, в)

 

память

 

(A,

в )

Рис. 4.4. Архитектура ВС типа «pегистp-регистp»

157

4. Конвейерные вычислительные системы

Фирма Cray Research выпускала также i модификации отмеченных выше моделей и создала еще один ряд мyлww,ипроцессорных BC: Cray-2, Cray-3, Cray-4, которые были архитектурно не юoвместимы с рядом, эволю-

ционировавшим от Cray-1.

Следует особо отметить, что в процессе разработок мультипроцессор-

ных BC фирма Cray Research сильно отошла от изначального архитектурно-

го канона (см. рис. 4.4). Каждая очередная разр ^ботка была заметным разви-

тием архитектуры предшествующей системы, н в конце концов фирма Cray Research c диалектической неизбежностью встала Ha платформу распреде-

ленных BC. Подтверждением сказанному служan семейство BC c массовым

параллелизмом или МРР-систем: Cray TЗD, Cray TЗЕ, Cray ТЗЕ-900, Cray ТЗЕ-1200, Cray ТЗЕ-1350 (МРР-systems —• Massively Parallel Processing

Systems, массово-параллельные BC).

C момента своего создания фирма Cray Research претерпела ряд преобразований. Так, в 1989 г. из данной фирмы под проект Cray-3 выделилась

Cray Computer Corp., которую возглавил C. Крей. B феврале 1996 г. про- изошло поглощение Cray Research Inc. фирмой SGI (Silicon Graphics Inc.).

B августе 1999 r. SGI создает подразделение Cray Research исключительно

для бизнеса в области суперкомпьютерав. B марте 2000 г. активы этого под-

рaзделения были проданы Tera Computer Company, и c этого времени начи-

нает функционировать Cray Incorporation. Нын Cray Inc. мировой лидер

no суперкомпьютерам.

далее будут рассмотрены архитектурнь::e возможности Cray-систем,

относящихся к видам PVP и МРР.

4.3.1. Система Cray -1

Создание ВС Cray-1 было завершено фирмой Cray Research в 1976 г.

Быстродействие системы составляло 160 MFL ОРД (16 • 10' опер./c при выполнении операций c плавающей запятой над векторами данных и 37 млн опер./с над скалярами), емкость оперативно i памяти 8...64 Мбайт, длина слова данных 64 двоичных разряда, цена 5...9 млн долл. Система Cray-1 успешно конкурировала на рынке супер ЭВМ вплоть до 1982 г.

Вычислительнaя система Cray-1 предназначалась для векторной и скaлярной обработки данных. Эта система сс стояла из четырех функционaльных подсистем: управления программой, конвейеров, регистров, памяти и ввода-вывода (рис. 4.5).

Подсистема управления программой ВС Cray-1 наряду со стандартны-

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

158

4.3. Конвейерные системы типа ирегистр регистр»

Подсистема управления командой

 

 

Буферы команд

 

 

i

 

Подсистема памяти

Процессор

 

Подсистема

 

(подсистема конвейеров)

 

регистров

 

и ввода-вывода

Конвейеры для

 

Адресные

 

Оперативная

операций над --

 

регистры

 

 

 

память

адресами

A

B

 

 

 

Конвейеры ддя

 

Длина вектора

 

 

скалярных

 

 

 

 

операций

 

Скалярные

 

Устройство

 

 

регистры

 

управления

Конвейеры для

S

T

 

вводом-выводом

операций

 

 

 

 

c плавающей запятой

 

Маска вектора

 

 

 

 

 

 

Конвейеры для

 

Вектoрные

 

Каналы

векторных

 

регистры

^•т

 

ввода-вывода

операций

 

V

 

 

 

Рис. 4.5. Функциональная структура системы Cray-1

Подсистема конвейеров это и есть процессор ВС Cray-1. Он состоял из 12 функционально ориентированных конвейеров, которые подразделя-

лись на четыре группы: для операции над адресами, скалярных операции, операций над числами c плавающей запятой и векторных операций. Конвей-

еры состояли из сегментов ЭБО. Каждый ЭБО был ориентирован на выполнение своей ми ооперации, длительность цикла любого ЭБО составляла 12,5 нс (12,5 • 10 c). Каждый конвейер мог выдавать результаты на каждом цикле работы, следовательно, цикл системы 12,5 нс.

Группа конвейеров для операций над адресами состояла из конвейеров для сложения и умножения целых чисел, причем первый из них имел в

своем составе два ЭБО, a второй шесть ЭБО. Группа конвейеров для скалярных операций была представлена счетчиком (з ЭБО) и тремя конвейерами : для сложения целых чисел (з ЭБО), логических операций (1 ЭБО) и сдвига (з ЭБО). Группа конвейеров для операций c плавающей запятой состояла из конвейеров для сложения, умножения и вычисления обратной ве-

личины (6, 7 и 14 ЭБО соответственно). B группу конвейеров для векторных

операций входили конвейеры для сложения целых чисел (з ЭБО), логических операций (2 ЭБО) и сдвига (4 ЭБО). Все конвейеры могли работать одновременно (параллельно). Деление в системе Cray-1 осуществлялось c помощью конвейера вычисления обратной величины.

159

4. Конвейерные вычислительные системы

Подсистема регистров ВС Cray-1 включала следующие основные регистры c программным доступом:

1)8 24-разрядных адресных A-регистров;

2)64 24-рaзрядных промежуточных адресных В-регистpов;

3)8 б4-рaзрядных скалярных S-регистpов.,

4)64 64-разрядных промежуточных скаля рных T-регистpов;

5)8 векторных V-регистpов.

Каждый из V-регистpов был способен хr анить вектор из 64-х 64-раз-

рядных компонентов.

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

Подсистема регистров ВС Cray-1 это сверхоперативная память (c

циклом б нс), обладающая емкостью 4888 байт.

Конвейеры имели доступ (для получения операндов и для записи результатов) только к А-, S- и V-регистpам; В- и Т-регистpы позволяли повысить скорость скалярной обработки. Скорость передачи для В-, T- и

V-регистpов равнялась одному слову за цикл системы, a для A- и S-регист-

ров одному слову за два цикла. Следовательно, совокупность В-, T- и V-регистpов (как память для кратковременного хранения данных) благоприятно повлияла на производительность системы.

Подсистема памяти и ввода-вывода ВС Cray-1 имела в своем составе

оригинально организованную оперативную память. Последняя обладала емкостью 1 м слов и состояла из 16 независимы: банков емкостью 64 K слов каждый. B свою очередь, любой банк включал в себя 72 модуля памяти, причем каждый из них предназначался для х^ ^анения одного разряда всех слов данного банка. Из 72 разрядов слова 64 лужили в качестве рабочего слова (команды или операнда), a остальные 8 разрядов предназначались для исправления одиночных и обнаружения двойь ых ошибок в рабочем слове. Время цикла одного банка было равно четыр .м циклам системы, т. e. составляло 50 нс. Однако наличие 16 независим:Ах банков позволило организовать 16-кратное чередование адресов.

Ввод-вывод информации в ВС Cray-1 о существлялся через 12 входных и 12 выходных каналов, которые обеспЕ:чивали суммарную скорость 500 тыс. 64-разрядных слов в секунду.

Система команд Cray-1 содержала 128 основных команд. Команды могли иметь одну или две 16-разрядных части. При формате команды (например, арифметической или логической) в виде одной части 7 разрядов отводились под код операции, по 3 разряда для адресов двух регистров, в

160

в Cray-1

4.3. Конвейерные системы типа «регистр регистр»

которых хранились два операнда, 3 разряда для адреса регистра, в который заносился результат. Разряды команды, которые использовались для двух адресов операндов, могли применяться как единое поле команды для адресации B- или Т-регистpов. Это же поле при формате команд в виде двух

частей в совокупности c 16 разрядами второй части использовалось и для адресации основной оперативной памяти.

B целях ускорения выполнения команд была предусмотрена их буферизация при помощи четырех специальных буферов, в каждом из которых могло быть размещено до 64 16-разрядных частей команды (см. рис. 4.5). Скорость передачи информации для буферов команд составляла 16 команд за цикл.

Арифметические операции c фиксированной запятой выполнялись над числами форматов 24 или 64 разряда. Для выполнения арифметических операций c плавающей запятой под мантиссу отводились 49 разрядов, a под

порядок 15 разрядов, что обеспечивало представление чисел в диапазоне

от 10-2500 до 10+2500

Операционная система cos (Сгау Operating System) обеспечивала

режим пакетной обработки (до 63 задач). Оптимизирующий компилятор

CFC (Cray Fortran Compiler) для языка высокого уровня ANSI 66 FORTRAN IV

учитывал особенности векторной обработки в системе Cray-1. B программ

ное обеспечение входили также макроассемблер САL (Cray AssemЫer Language), библиотека стандартных программ, загрузчик и другие сервис-

ные средства.

Особенность архитектуры ВС Cray-1 состояла в том, что она обладала способностью адаптации к структуре решаемой задачи. Последнее достигaлось настройкой (программным формированием) цепочек (макроконвейеров) из произвольного числа конвейеров и c произвольной их последовательностью. B таких макроконвейерах передача информации между соседними конвейерами осуществлялась непосредственно (через регистры),

т. e. без пересылок в оперативную память. Следует также подчеркнуть, что допускалась параллельная работа как конвейеров, так и элементар-

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

Конструкция ВС Cray-1 уникальна. Система была выполнена в виде 12 клинообразных стоек, имеющих высоту 1,96 м и расположенных по дуге в 270° внутри окружности c диаметром 2,63 м (причем на высоте 0,48 м диаметр окружности уменьшался до 1,44 м). Такой <псольцевой» принцип компоновки конструкции ВС Cray- 1 позволил достичь незначительных длин электрических соединений между устройствами и узлами (не более 4 фу-

6 - 685

161

4. Конвейерные вычислительны e системы

тов*), следовательно, уменьшить задержки при прохождении сигналов. B системе было применено фреоновое охлаждеj iие.

Комплекс архитектурных, структурных и конструктивных решений позволил в условиях микроэлектронной базы начала 1970-x годов достичь в ВС Cray-1 длительности цикла в 12,5 нс и высо: сого уровня надежности.

Первая поставка системы Cray-1 была осуществлена в Лос-

Аламосскую национальную лабораторию (Los Alamos National Laboratory) в

1976 г. Поставленная конфигурация ВС имела память емкостью 1 млн слов,

цена поставки 8,8 млн долл. Фирмой Cray Research было произведено всего 16 систем Cray-1.

4.3.2. Параллельно- векторные системы Cray

Системы Cray вида РУР являются коллективами (или кластерами), образованными из конвейерных процессоров. Н иже будут рассмотрены два семейства РУР-систем, первое из которых включает следующие модели:

Cray Х-МР, Cray Y-MP, Cray С90 и Cray Т90, a второе Cray-2, Сгау-3 и Cray-4. Эти PVP-системы перекрывают диапазон производительности от сотен до десятков тысяч MFLOPS, обладают емкостью оперативной памяти

от десятков миллионов до десятков миллиардо в байт, способны работать c

64-разрядными операндами. Парaллельно-вект эрные системы Cray являются суперкомпьютерами конца ХХ в.

Вычислительные системы Cray Х-М Р и Cray Y-МР. Система Cray X-МР первая суперВС кластер из конвейерных процессоров. Ар-

хитектypа ВС Cray Х-МР относится к классу MIMD, однако эту систему

следует воспринимать как «старшую» модель, совместимую c Cray-1. Образец двухпроцессорной ВС был создан в 1982 г. , a четырехпроцессорной в

1984 г. B системе Cray Х-МР может быть два или четыре процессора, максимaльное быстродействие составляет 940 MFLOPS, быстродействие одного

процессора

235 MFLOPS, емкость оперативной МОП-памяти произволь-

ной выборки

64... 128 Мбайт, цена четырек:процессорной конфигурации

ВС

14,6 млн долл.

Компания Cray Research производила также мини-суперкомпьютер (Minisupercomputer) Cray ХМs, совместимый c Cray Х-МР c воздушным ох-

лаждением.

Эффективной областью применения ВС Cray Х-МР являлось, например, моделирование авиакосмических объектов. Задачи этой области допускают расщепления вычислительного процесса на два и четыре самостоятельных процесса. Например, на двух процЕ ;ссорах можно рассчитывать

* 1 фут = 0,3048 M.

162

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