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

khor32

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

6.4. Семейство вычислительных систем «Эльбрус»

6.3.2. Вычислительная система B 7700

Вычислительная система В 7700 (1973 г.) в отличие от В 6700 могла иметь в своем составе 1-7 ЦП и от 1-7 процессоров ввода-вывода информации, при этом общее количество процессоров не превышало восьми. Быстродействие ЦП составляло 4...5 млн опер./c. Процессор ввода-вывода об-

служивал 32 канала и четыре процессора передачи данных. K каждому ка-

нaлy подключалось периферийное оборудование; максимальное количество адресуемых внешних устройств составляло 255. Процессор передачи данных был рассчитан на подключение до 256 линий связи. Оперативная память ВС В 7700 состояла из восьми модулей, была 8-входовой и имела емкость 12 288 K байт. Слово состояло из 52 разрядов, из которых 48 были информационными, 3 управляющими и 1 для контроля по четности. Все разряды слова были доступны процессорам, как центральным, так и вводавывода и передачи данных.

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

лизации отказа или ошибки исключала из рабочей конфигурации неисправ-

ные модули или программы c ошибками (без влияния на другие программы).

Опыт, накопленный при создании ВС В 6700 и В 7700, был положен

фирмой Burroughs в основу последуюiцих разработок мультипiроцессорньх ВС.

6.4. Семейство вычислительных систем «Эльбрус»

Работы по проектированию семейства ВС «Эльбрус» проводились в 1970-x и 1980-x годах под руководством B.C. Бypцева (1927-2005; академик РАН c 1992 г.) в Инститyтe точной механики и вычислительной техни и (ИТМиВТ) им. C.A. Лебедева АН СССР. Аванпpоект ВС «Эльбрус» был разработан в 1970 г., модель «Эльбрус-1» была принята Госкомиссией в 1980 г., a «Эльбрус-2» в 1985 г. [3, 7, 13]. Обе модели выпускались в

СССР более 15 лет.

B рамках работ по проекту «Эльбрус» преследовалась цель создать семейство высокопроизводительных и надежных ВС. Для моделей семейст-

ва «Эльбрус» характерны:

• мГМД-архитектура;

243

б.Мультипроцессорные вычислите 'ьные системы

распределенное управление;

однородность, модульность и масштабиру емость структуры;

надежность и самоконтроль;

аппаратурная поддержка функций ОС и средств языка высокого уровня;

разрядность слов 32, 64, 128;

многоуровневая память;

спецпроцессоры приема-передачи данныр.;

производительность до 125 MFLOPS.

6.4.1. Функциональная структура семейства вычислительных систем «Эльбрус»

Любая из моделей семейства «Эльбрус» представляет собой распределенную вычислительную систему, построенную по модульному принципу (рис. 6.4). Система обладала свойством масштабируемости и допускала формирование конфигураций, адекватных сферам п: оименения и/или финансовым возможностям потребителей. B состав системы «Эльбрус» могло входить от 1 до 10 ЦП, от 4 до 32 модулей оперативной памяти, от 1 до 4 процессоров ввода-вывода, от 1 до 16 процессоров приема-п^ ^редачи данных, необходимое количество устройств внешней памяти (УВП; накопителей на магнитных лен-

 

цп1

 

Цп

 

лК

 

лК

 

1

L

 

лК

лК

лК

л!

МП 1-4

МП5-8

МП2 5-28

МП 29-зг

 

лК

 

 

 

пвв 1

 

 

ппд l

ппд 16

 

Увв

Каналы связи

Рис. б.4. Функциональная структура системы «Эльбрус»:

ЦП - центральный процессор; ЛК - локальный кс ммутатор; МП - модуль памяти; ПВВ - процессор ввода-вывода; ППД - процессор передачи данных; УВП - устройство

внешней памяти; УВВ - устройство ввода-вывода

244

6.4. Семейство вычислительных систем (('Эльбрус»

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

пpедстaвлявший собой комшозит по локальных коммутаторов (ЛК).

Функционирование каждого из компонентов (ЦП, ПВВ, четырех модулей памяти и ЛК) системы «Эльбрус» поддерживалось средствами аппаратного контроля. Эти средства при появлении даже одиночной ошибки вы-

рабатывали сигнал неисправности. По этому сигналу ОС через аппаратно-

реaлизованнyю среду реконфигурации исключала неисправный компонент из рабочей конфигурации. Отключенный компонент попадал в ремонтную конфигурацию, где он при помощи контpольно-диагностических программ и специальной аппаратуры ремонтировался, после чего мог быть включен ОС в рабочую конфигурацию.

Средства реконфигурации позволяли организовать конфигурации ВС повышенной надежности. Так, например, допускались конфигурации ВС c резервом на уровне однотипных компонентов. Время включения резервного компонента в рабочую конфигурацию ВС не превышало 0,01 c. Надежность ВС выражалась в возможности передачи функций отказавшего компонента другому такого же типа, что, конечно, приводило к снижению рабочих характеристик (производительности, в частности), но не к отказу ВС в целом.

Средства реконфигурации предоставляли также возможность настраивать ВС на решение задач различны классов.

Помимо общедоступной оперативной памяти (МП 1—МПЗг) в системе «Эльбрус» имелась также и сверхоперативная память, распределенная по

центральным процессорам (ЦП 1—ЦП 1 0) • Каждое слово в ВС сопровождалось тегом, указывающим тип данных

(целое, вещественное, адрес, метка процедуры и т. д.) и формат данных (32,

64 или 128 разрядов).

Работа ВС «Эльбрус» осуществлялась под управлением ОС. B этой ВС был реализован механизм управления вычислительными процессами, учитывающий состав и состояние ресурсов ВС. Вычислительный процесс мог быть активным или пассивным. Одновременно несколько процессов

могли быть активными, при этом любой процессор мог работать c любым из них. Для синхронизации процессов использовались семафоры; система ко-

манд содержала операции «открыть семафор» и «закрыть семафор». Если все процессоры были заняты работой, то могла образовываться очередь готовых к выполнению процессов. После освобождения какого-либо процес-

сора (в частности, если реализуемый в нем активный процесс по тем или

иным причинам становился пассивным или заканчивался) происходило об-

245

6. Мультипроцессорные вычислите)'ьные системы

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

6.4.2. Вычислительная систему . «Эльбрус-1»

Опытные образцы модели «Эльбрус-1» были изготовлены в начале 1978 г., a промышленная система «Эльбрус-1» F тыла принята Госкомиссией в

1980 г. Система «Эльбрус-1» имела производительность от 1,5 до 15 MFLOPS

и емкость оперативной памяти от 576 до 4608 : К байт в зависимости от конфигурации.

Центральный процессор ВС «Эльбрус-1» оперировал c числами, имевшими формат в 32, 64 и 128 разрядов, и c алфав атно-цифровой информацией. Он обеспечивалвыполнение операций сложен] Iя c фиксированной и c плавающей запятой за 520 и 780 нс соответственно, операций умножения 32-разрядных и 64-разрядных чисел за 780 и 1300 нс соответственно, a логических операций за 520 нс. Максимальное быстродействие центрального процессора оценивалось величиной 1,5 млн опер./с;. Для построения процессора были использованы интегральные схемы (c транзисторно-тpанзисторной логикой ТТЛ), имевшие задержку 10...20 нс на вентиль.

Для обеспечения программной совместит мости «Эльбрус-1» c БЭСМ-6 был разработан спецпроцессор (реализующий систему команд БЭСМ-6). Этот спецпроцессор подключался к ВС «Эльбрус-1» вместо одного из ЦП. Спецпроцессор имел быстродействие 3 млн ог 1ер./c, выполнял сложение за 240 нс, умножение за 400 нс и логические операции за 80 нс.

Оперативная память имела в своем составе от 4 до 32 модулей, причем для группы из 4 модулей предназначался свой локальный коммутатор. Комму-

татор обеспечивал связь группы из 4 модулей памяти c 10 ЦП и 4 процессорами ввода-вывода (через локальные коммутаторы). Гругша из 4 модулей памяти имела емкость б4 K 72-разрядны слов, модули аботали c перекрытием циклов обращения. Оперативная память была реализован 3а на ферритовыx сердечниках, ее время цикла составляло 1,2 мкс, a время доступа 0,5 мкс.

B процессорах ввода-вывода были аппаратно реализованы алгоритмы управления периферийным оборудованием, a также те основные алгоритмы операционной системы, которые осуществляли диспетчеризацию ввода-вывода. Максимальная скорость обмена информацией одного ПВВ c оперативной памятью достигала 36 млн байт/с, a скорости обмена данными через быстрый канал (для накопителей на магнитных барабанах и дисков), стандартный канал (для накопителей На магнитных лентах и устройств ввода-вывода) и канал для ППД соста:3ляли до 4, 1,3 и 1 млн байт/с соответственно.

246

6.4.Семейство вычислительных систем «Эльбрус»

Всостав программного обеспечения ВС «Эльбрус-1» входили ОС, система программирования, комплекс прикладных и сервисныx программ, система телеобработки, контрольные и диагностические программы. Операционнaя система позволяла ВС работать в режимах пакeтной обработки, разделения времени и терминальной обработки. Она осуществляла динамическое распределение всех ресурсов ВС; управляла работой процессоров и обеспечивала их синхронизацию; реализовьшала виртуальную память и расчленение физической памяти на сегменты (без жес те границ и c точностью до слова). Операционная система обеспечивала также автоматическую реконфи урат по ВС, восстановление файлов и перезапyск задач и системы (в целях поддержки надежности). Общий объем ОС и транслятора c автокода «Эльбрус» составлял всего лишь 250 тыс. слов.

Система программирования ВС «Эльбрус-1» включала в себя следую-

щие языки: ALGOL 60, ALGOL 68, FORTRAN, COBOL, PL/1, SIMULA 67,

PASCAL и автокод «Эльбрус». Она обеспечивала также: отладку программ на исходном языке; диагностику ошибок при компиляции и исполненин программ; комплексирование и сегментацию программ; повторное вхождение в программы; защиту и редактирование программ и др.

6.4.3. Вычислительная система «Эльбрус-2»

Вычислительная система «Эльбрус-2» (вторая архитектурная генерация семейства «Эльбрус») была сдана Госкомиссии в 1985 г. Максимальная производительность ВС «Эльбрус-2» составляла 125 млн опер./с, емкость оперативной памяти 160 Мбайт, пропускная способность распределенного коммутатора 2 Гбайт/с. Для построения данной модели была использована элементная база, которая характеризовалась временем задержки на вентиль 2...3 ис.

Архитектурные особенности ВС «Эльбрус-2»:

система команд обеспечивала эффективную реализацию автокода «Эльбрус» (являющегося языком высокого уровня);

часто встречающиеся программные конструкции языка высокого уровня имели аппаратурную поддержку;

диспетчер внешних объектов был реализован аппаратно в ПВВ;

система команд и программное обеспечение ППД обеспечивали простую адаптацию к различным вычислительным сетям и внешним объектам;

допускалось формирование конфигураций ВС, в которых вместо цП

включался спецпроцессор, совместимый c машиной БЭСМ-6 (c производи-

тельностью, превышающей более чем в б раз быстpодействие указанной ЭВМ).

247

6. Мультипроцессорные вычислителгьные системы

6.4.4. Перспективы развития семейства вычислительных систем «')льбрус»

Легко заметить, что в моделях «Эльбрус- l» и «Эльбрус-2» содержатся архитектурные решения, существенно отличающиеся от канонических и приближающие мультипроцессорные ВС к кл^.ссу распределенных средств обработки информации.

B 1995 г. была создана в единственном экземпляре 16-процессорная ВС «Эльбрус-3 », в которой принцип параллелизма получил более глубокое воплощение.

дальнейшее архитектурное развитие сеr 1ейства ВС «Эльбрус» было

связано c проектированием микропроцессора E2k (E2k сокращение от Elbrus 2000). Планировaлось, что данный микpо процессор будет создан груп-

пой компаний «Эльбрус» (организованной в но абре 1998 г.).

Архитектура E2k ориентирована на работу c длинным командным

словом (VLIW Very Long Instruction Wore ). B специально отведенных

полях команды каждому из параллельно работающих функциональных устройств предписываются свои действия. Пре4;полагается, что существуют компиляторы c языков высокого уровня, коте ярые готовят программы, за-

гружаемые в микропроцессор. Итак, архитектура VLIW является противо-

положностью суперскалярнои, которая в системе команд не предусматривает каких-либо указаний на параллельную обработку внутри процессора. Ар-

хитектypа VLIW позволяет осуществить параллельную работу в процессоре

большого числа функциональных устройств.

Возможности микропроцессора E2k характеризуют следующие показатели:

тактовая частота 1,2 ГГц;

технологические нормы 0,18 мкм;

площадь кристалла 126 мм 2;

мощность тепловыделения —35 Вт.

За счет параллелизма архитектуры микропроцессор E2k должен был обладать пиковой производительностью 4,8 CгFLOPS. Этот уровень произ-

водительности был самым высоким из доступ: -iых микропроцессорам, анонсированным к началу 1999 г.

Чтобы оценить возможности микропроцессора E2k полнее, воспользуемся современными технологиями измерения производительности средств микропроцессорной техники. Среди наиболее распространенных

имеются наборы тестов корпорации SPEC (Standard Performance Evaluation Corporation), например SPEC 95. Этот набор состоит из двух частей: SPECint95 совокупность тест-программ для оценки быстродействия (в

MIPS) микропроцессоров при выполнении о:^ераций c фиксированной за-

248

б.5. Предпосылки совершенствования архитектуры

пятой и SPECfp95

для определения производительности (в MFLOPS)

для операции c плавающей запяток.

Разработчики микропроцессора получили следующую оценку произ-

водительности E2k: SPECint95/fp95 = 135/195. Эту оценку уместно срав-

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

цессора Merced фирмы Intel: SPECint95/fp95 = 45/70. Следовательно, можно было ожидать, что микропроцессор E2k будет почти в 3 раза быстрее

Merced (частота Merced 800 МГц, площадь кристалла 300 мм2, мощность тепловыделения 60 Вт). Планировалось, что промышленный вы-

пуск E2k будет налажен в 2002 г. Однако этим планам не суждено было сбыться.

В настоящее время Институтом микропроцессорных вычислительных систем РАН выполняются работы в рамках госзаказа по созданию ВС (<Эль- брус-ЗМ». данная мультипроцессорная ВС будет компоноваться из однокристaльныx высокопроизводительных микропроцессоров и иметь распределеннyю общую когерентную память.

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

Мультипроцессорные ВС результат развития архитектуры ЭВМ.

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

третьего поколений. Первые мультипроцессорные ВС появились еще в се-

редине 1960-x годов. Например, в 1955 г. фирмой IBM была создана специализированнaя дуплексная система SAGE (semi-Automatic Ground Equipment,

Полуавтоматическое наземное оборудование) для обработки информации в целях противовоздушной обороны США (такие системы располагались по периметру Северной Америки). В 1958 г. была создана дуплексная система SABRE для резервирования билетов на американских авиалиниях. Она представляла собой комплекс из двух машин ЭВМ 7090 и множества терминалов, в котором одна из ЭВМ составляла горячий резерв.

Мультипроцессорные ВС начала 1960-х годов представляли собой композицию из нескольких ЭВМ, процессоры которых имели доступ к общей внешней памяти на магнитных лентах или дисках. Позднее в системах в качестве общего ресурса стала выступать оперативнаяпамять. K 1970-м годам мультипроцессорные ВС приобретают архитектуру, в основе которой лежит канонический мультипроцессор (см. § б.1, рис. б.1).

Мультипроцессорные ВС как класс средств обработки информации в

архитектурном плане совершеннее конвейерных и матричных ВС. Они яв-

249

6. Мультипроцессорные вычислите 'ьные системы

ляются носителями МГМД-архитектypы и оснс ванн на модели коллектива вычислителеи.

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

структуры и параметры реализуемых алгорит тов достигается средствами

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

B мультипроцессорных ВС принципы модели коллектива вычислителей реализованы далеко не c исчерпывающеi i полнотой. Причиной этого является единый ресурс, через который взаимодействуют средства обработки и хранения информации. Единый ресурс ограничивает возможности масштабирования, наращивания производите гiьности и емкости памяти, снижает надежность ВС в целом.

B сравнении c системами, использующпми каноническую структуру мультипроцессора (см. рис. б.1), архитектурно более совершенными и более технологичными будут ВС, базирующиеся на модифицированном мультипроцессоре (рис. 6.5). B усовершенствованном мультипроцессоре в качестве единиц ресурсов выступают не элементарные процессоры (ЭП), a более мощные средства элементарные машины (' ЭМ). Каждая ЭМ включает в свой состав ЭП и локальную память (ЛП), взаимодействие между ЭП и ЛП осуществляется через локальный коммутатор (ЛК). допустимы модульная организация локальной памяти ЭМ и, более того, использование нескольких процессоров в одной ЭМ. Связь между ЭМ реа лизуется через общий коммутатор. B простейшем случае функции этого i:оммутатора могут быть пре-

IЛП

ЭМ

ЛП

 

(эп

 

 

лк

лк

Коммyтатор

Рис. б.5. Модифицированная функциональная структура мультипроцессора:

ЛП — локальная память; ЭМ — элементарная машина; . ГIК — локальный коммутатор; ЭП — элементарный процессор

250

6. б. Вычислительная система Ст*

дельно упрощены и возложены на линию связен между локальными комму-

таторами ЭМ (см. пунктирную линию на рис. 6.5). B более совершенны

мультипроцессорах общий коммутатор может быть основан на принципе

модyльности. B архитектypно развитых ВС такой коммутатор может быть

распределенным (когда его модули рассредоточены по ЭМ). Тогда такие ВС не будут различимы c распределенными системами (т. e. c ВС, полностью основанными на модели коллектива вычислителей).

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

числительными системами c виртуапьной общей (разделяемой) памятью

(Virtual Shared Метогу). Подчеркнем, что в данных мультипроцессорных

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

Современные мyльтипроцессорные ВС системы c массовым парал-

лелизмом (МРР Systems). Примерами МРР-систем могут служить Сгау ТЗD

и Cray ТЗ Е, которые берут свое начало от канон ческих конвейерных ВС (см. гл. 4). Массовым параллелизмом характеризуются и модели семейств

Connection Machine и nCube, являющиеся результатом эволюции классиче-

ских матричных ВС (см. гл. 5). Количество элементарных процессоров в МРР-системах достигает 10 5

Развитие мультипроцессорных ВС идет в направлении не только «распределенности» (памяти, коммутатора и средств управления), но и все

более полного воплощен я принципов программируемости и однородности.

Далее будут рассмотрены американские академические системы, в которых

глубже проявляются свойства коллектива вычислителей и которые в своем архитектурном развитии вплотную подошли к распределенным ВС c

программируемой структурой (см. гл. 7 и [5]).

6.6. Вычислительная система Ст *

Вычислительная система Cm* была разработана Университетом Кapнerи—Meллoнa и относилась к микpoBC. Целью разработки являлось

создание BC из сравнительно большого числа (до 100) микропроцессоров (построение микpoBC) и исследование aппapaтypнo-пporpaммныx peшe-

ний в области архитектуры средств на базе ВИС. Существенное внимание

было уделено вопросам обеспечения надежности BC и снижения их пoкaзaтeля стоимость/производительность. При построении BC были иcпoль-

251

6. Мультипроцессорные вычислительные системы

зoвaны простые микропроцессоры LSI-11 фирмы DEC, совместимые c мини-ЭВМ PDP-11.

6.6.1. Архитектура микроВС Ст*

Система Ст* (рис. б.6-6.8) в сравнении c системой С.ттр (см. рис. 6.2) приобрела заметные архитектypные усовершенствования, в ней полнее были реализованы принципы модели коллектива вычислителей. Ар-

хитектypа ВС Ст* стала более близкой к архитектуре ВС c программируемой структурой (см. гл. 7 и [5]). B самом деле, в микроВС Ст * пара «элементар-

ный процессор локальная память» выполняла функции вычислительного

модуля (Computer Моди1е), a вычислительный модуль в совокупности либо c контроллером K отображения адресов (рис. 6,6, a), либо c локальным коммyтатором ЛК (рис. б.6, б) реализовывали функции ЭМ. B первом случае ЭМ выглядела как двyxполюсник, a во втором как многополюсник (не менее двух полюсов). B состав ЭМ могли включаться внешние устройства (со своими контроллерами).

Взаимодействие между вычислительны v[и модулями осуществлялось через «распределенный коммутатор» сеть ;вязи, образуемую подсоединением контроллеров отображения адресов к межмодульным шинам (см. рис. б.7) или (и) отождествлением полюсов локальных коммутаторов различных элементарных машин (см. рис. 6.8). Ко нтроллер это специальный процессор, который выполнял все функции, связанные c передачей сообще-

ний. Локальный коммутатор имел простую структуру, обеспечивающую

параллельную передачу слова между процессом нами.

Отметим характерные особенности архитектуры ВС Ст*. Реконфигурируемость способность л%:икроВС к априорной адапта-

ции своего состава и структуры сети межмашинных связен к конкретной области применения.

г-^

o

эп лп

a

6

Рис. 6.6. Элементарная машина системы Ст * :

a — на базе контроллера; б — на базе локального комм^ татора; К — контроллер; ЭП — элементарный процессор; ЛК — локальный коммутатор; ЛII — локальная память

252

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