khor32
.pdf5.4.Семейство вычислительных систем Connection Machine
5.4.4.Области применения систем семейства Connection Machine
Изначальный замысел Connection Machine это создание в условиях
технических и технологических ограничений 1980-x годов высокопроизво-
дительног0 инструмента для решения проблем искусственного интеллекта.
Этот замысел нашел воплощение в архитектуре ВС СМ-1 и СМ-2; первона-
чaльнyю область их применения составили информационно-логические задачи. Первые параллельные алгоритмы сортировки и ассоциативного поиска, использующие возможности программирован я структуры СМ-1, были разработаны B.Д. Хиллисом.
Вычислительные системы СМ-2 эффективно эксплуатировались в областях, в которых требовалось решать сложные задачи, связанные c переработкой большого количества данных. Это, в частности, поиск информации в базах данных, картография, обработка изображений, восстановление документов; автоматизированное проектирование, моделирование БИС; проектирование лекарственны препаратов; гидро- и газодинамика, моделирование прохождения волн через Землю; ядерная физика.
Было установлено свыше 30 ВС СМ-2 в различных организация,
включая Национальную лабораторию в Лос-Аламосе (Los-Alamos National
Labs) и Национальный центр для исследования атмосферы (the National Center for Atmospheric Research).
Вычислительные системы СМ-5 в отличие от СМ-2 проектировались для супервычислений. Достигнyтые их технические характеристики (производительность порядка 1 тFLOPS) позволили существенно раздвинуть
границы применения семейства Connection Machine. B качестве областей
применения систем СМ-5 можно указать, в частности, фармацевтическую промышленность (конструирование сложных химических соединений),
ядерную физику, космонавтику, геофизику и геологию (моделирование
геологических образований Земли).
Системы СМ-5 нашли широкое применение в исследованиях, проводимых в правительственных организациях и университетах, a также в меж-
дународном бизнесе. B частности, система СМ-5 установлена в Лаборатории
реактивных двигателей (Jet Propulsion Laboratory, NASA). Система исполь-
зуется для обработки данных, поступающих от космических кораблейчелноков (для получения c высоким разрешением цветных изображений поверхности Земли).
Конфигурация системы СМ-5 Национального центра по супервычис-
лениям (NCSA National Center for Supercomputing Applications), эксплуа-
тировавшаяся несколько лет c мая 1993 г., состояла из 512 процессорньх узлов. Она обладала производительностью 64 GFLOPS, имела распределен-
нyю память емкостью 16 Гбайт и параллельную дисковую память (SDA Sса1аые Disk Array) емкостью 140 Гбайт.
223
5. Матричные вычислительны о системы
Лос-Аломосская национальная лаборатория эксплуатирует конфигурацию СМ-5, состоящую не менее чем из 1024 процессорных узлов. Находятся в эксплуатации также конфигурации сис'гемы СМ-5Е, которая является развитой модификацией СМ-5 и компонуетс я из более производительных
микропроцессоров (SuperSPAКC processors) и Е,екторных процессоров.
5.5. Семейство вычислительных систем nCube
Вычислительные системы семейства nСи ^е (так же н как и модели Con- nection Machine) являются средствами обработки информации c массовым параллелизмом, т. e. МРР-системами (МРР Massively Parallel Processing).
Технико-экономическая эффективность МРР -систем была достигнута в
1980-x годах прежде всего за счет успехов в тЕ:хнологии БИС (VLSI Very Large Scale Integration).
B состав семейства nCube входят следующие модели: nCube-1 (1985), nCube-2 (1989) и nCube-3 (1995). Все модели Возданы одним из пионеров в
области МРР-систем компанией nCube, основанной в 1983 г. Системы семейства nCube показали рекордные для 190-х годов результаты как по производительности, так и по показателю «v ена/производительность» при решении сложных вычислительных задач.
5.5.1. Особенности архитектуры и фунi:циональной структуры
ВС семейства nCunbe
Архитектура ВС nCube относится к классу MIMD. Следовательно,
они характеризуются высокой эффективност ю использования оборудования (множества элементарных процессоров) т мри мультипрограммировании; в каждой из них допускается одновременная реализация нескольких параллельных программ на своих ресурсах. Кроме того, системы nCube поддерживают режим обработки информации, хара^:терный для SIMD-архитектур (для матричных процессоров).
Структуры сетей межпроцессорных связей в системах nCube представлены гиперкубами (см. разд. 3.1.2 и 5.4.1). B системах nCube допускается настройка популярных (виртуaльных) структур, включая кольца, решетки, деревья и тороидaльные образования.
Максимальное число элементарных прс цессоров в конфигурациях ВС
семейства nCube составляет 65536; быстродейсгвие до нескольких TFLOPS;
емкость памяти до 64 Тбайт; масштабируемость гиперкубических конфигypаций систем от 8 до 65 536 ЭП.
224
5.5. Семейство вычислительных систем nCube
Любая из систем nCube обладает распределенной памятью. B самом деле, каждый элементарный процессор ВС располагает своей собственной локальной памятью, и он имеет доступ через сеть межпроцессорных связей к памяти любого другого ЭП. Путем изменения числа ЭП в конфигу-
рации ВС достигается масштаиирование не только вычислительной мощности, но и емкости памяти и пропускной способности канала «процессор память».
Элементарные процессоры (процессорные узлы) во всех системах се-
мейства nCube реализованы в виде VLSI-cxeм.
Работоспособность систем nCube поддерживается c помощью методов контроля по четности и ЕСС-коррекции ошибок (ЕСС Егтог Соггес-
tion Соде код коррекции ошибок).
C развитием технологи БИС (c увеличением возможностей микропроцессорных VLSI-cxeм) осуществлялось эволюционное совершенствование моделей семейства nCube. Однако все модели данного семейства по сути, масштабируемые ВС, любая из моделей могла состоять из 2 k элементарных
процессоров, причем для nCube-1 и nCube-2 k = 3, 13, a для nCube-3
k=3,16.
Модель nCube-1 была построена в 1985 г. Она показала перспектив-
ность применения VLSI-cxeм и гиперкубических структур для межпроцес-
сорных соединений. Эта модель позволила достичь рекордны для 1985 г. результатов по производительности и по показателю <щена/производительность» при решении сложныx научных проблем.
Модель nCube-2 выпускалась серийно c 1989 г. в течение десятилетия.
Максимальная конфигурация nCube-2 могла иметь в своем составе 8192 ЭП,
представляющих 13-мерный гиперкуб. Для данной модели производитель-
ность составляла 34 GFLOPS и 123 000 МIPS.
Модель nCube-3 завершает ряд nCube, данная ВС разработана в середине 1990-x годов. диапазон масштабирования ВС по числу элементарных
процессоров: от 8 до 65536. Производительность максимальной конфигура-
ции nCube-3 оценивается несколькими тFLOPS, a ее структура представле-
на 16-мерным гиперкубом (16Д-кубом).
B последующих разделах будут подробнее рассмотрены архитектур-
ные решения в вычислительных системах nCube-2 и nCube-3.
5.5.2. Вычислительная система nCube-2
Вычислительные системы nCube-2 выпускались в двух мoдификaци-
яx: nCube-2 и nCube-2S. Первая модификация BC базируется на ЭП c такто-
вой частотой 20 NII'ц, a вторая — 25 MГц. для конфигураций nCube-2 доступ-
8-685 |
225 |
5. Матричные вычислительные системы
•^ |
|
Гиперкубический |
^• |
•^ |
|
процессор nCube-2 |
^• |
|
Подсистема ввода-выи ода |
||
i |
|
nChannel |
|
Н^РР^ |
|
nVision |
|
|
1б каналов |
||
|
|
|
|
СуперВС |
-- |
Ведущая |
Графические |
I Средства Вт |
- |
— мониторы |
|
ВС |
|
Ethernet
дП НМЛ
МПСВ
Рис. 5.13. Функциональная структура ВС nCube-2:
ДП — дисковая память; НМЛ — накопитель на магнитной ленте; МПСВ — модуль преобразования сигналов и видеообрaзов
ны следующие диапазоны производительности: 26 MFLOPS..27 GFLOPS, б0 MIPS ... 60 GIPS, a для nCube-2S 33 MFLOPS ... 34 GFLOPS, 120 MIPS ...123 G1PS. При масштабировании ВС варьируется не только
производительность, но и емкость оперативной памяти от 32 Мбайт до 32 Гбайт.
Функциональная структypа ВС пСи1 е-2. Вычислительная система nCube-2 представляет собой композицию (рис. 5.13) из гиперкубического процессора nCube-2, подсистемы ввода-вывода и ведущей ВС (см. функцио-
нaльную структуру ILLIAC IV, разд. 5.2.1).
Процессор (или собственно ВС) nCube-2 это множество элементарных процессоров, структура сети связен межд у которыми является гиперкубом. Данный процессор масштабируем, числс ЭП в его конфигурациях может составлять 8-8192. B зависимости от количества ЭП в конфигурациях nCube используются гиперкубы от ЗД-куба до 13Д-куба.
Конструкция процессора nCube-2 формируется из стоек. B каждой
стойке содержится 16 плат, на одной плате размещается 16 ЭП.
Подсистема ввода-вывода в системе nC ibe-2 параллельного действия. Она позволяет осуществлять параллельные вычисления в процессоре nCube-2 одновременно c параллельным обменом c вне гними устройствами.
226
S.S. Семейство вычислительных систем Псиье
Подсистема ввода-вывода nCube-2 формируется из следующих плат: nChannal, HIPPI и nVision. Плата nChannal используется для реализации
взаимодействий между системой nCube-2 и внешней средой. Она имеет
16 независимых каналов ввода-вывода, каждый из которых управляется од-
ним ЭП (таким же, как в процессоре nCube-2). Пропускная способность каждого из каналов платы nChannal достигает 20 Мбайт/с. C помощью каналов платы nChannal система nCube-2 соединяется, в частности c ведущей ВС,
сетью Ethernet, дисковой памятью (ДП), накопителями на магнитных лентах
(НМЛ), модулями преобразования сигналов и видеообразов (МПСВ).
Плата HIPPI обеспечивает связь системы nCube-2 c другими высоко-
производительными ВС или иными средствами ВТ, поддерживающими ин-
терфейс HIPPI (HIgh Performance Рата11е1 Interface высокопроизводительный параллельный интерфейс). На плате HIPPI содержится 16 ЭП, которые
служат для обработки сетевого трафика (т. e. для организации и реализация обменов информацией; по 8 ЭП для управления и вводом, и выводом). Пла-
та HIPPI обеспечивает пропyскнyю способность при передаче данных до
100 Мбайт/c.
Плата nVision позволяет графически отображать большие объемы данных в реальном времени. На плате nVision размещены 16 ЭП, специаль-
ный текстовый процессор, оператиная память емкостью 16 Мбайт, буферная память емкостью 2 Мбайт, два контроллера.
Ведущая ВС (Host Computer) предназначается для реализации некото-
рых функций операционной среды: для загрузки, инициализации и «сброса» системы nCube-2, для разработки и запуска прикладных параллельных про-
гpамм, для контроля за функционированием nCube-2 и, в частности подсис-
темы ввода-вывода. Ведущая ВС обеспечивает также доступ в интерактив-
ном (on-line) режиме к документации по архитектуре и программному обеспечению nCube-2.
B качестве стандартной ведущей ВС в конфигурациях системы nCube-2 может использоваться любая рабочая станция компании Sillicon Graphics.
Такие станции, по сути, являются многопроцессорными системами c общей памятью, которые работают под управлением операционной системы UNIX.
Элементарный процессор nCube-2. В системе nCube-2 ЭП одно-
кристальный, в состав его функциональной структуры входит:
•центральный процессор;
•блок для вычислений c плавающей запятой;
•кэш-память;
•оперативная память;
•14 каналов прямого доступа к памяти (DMA Direct Memo ry Access);
•устройство маршрyтизации сообщений.
в* |
227 |
5. Матричные вычислительны системы
Центральный процессор б4-разрядны:, он производит целочисленные вычисления. Блок для вещественных вы ислений представляет собой
двухступенчатый конвейер, способный работать c 64-разрядными словами.
Кэш-память ЭП состоит из двух частей емкостью по 16 K байт каждая. Одна из этих частей предназначается для команд, a другая для данных. При обращении к кэш-памяти поддерживается скорость 1,6 Гбайт/с. B ЭП используется память динамического типа емкостью 4...64 Мбайт.
При тактовой частоте 25 МГц ЭП имеет зыстродействие при обработ-
ке целочисленных данных 15 MIPS и производительности 4,1 MFLOPS и
3 MFL0P S в вычислениях c плавающей запят^ ^й при одинарной и двойной
точности соответственно.
Из 14 ДМА-каналов ЭП 13 используют ся для взаимодействий c со-
седними ЭП (в 13D-кубе) и один служит для вЕ ода-вывода информации. Это позволяет варьировать число процессоров от 8 до 8192, причем при этом адекватно масштабируется не только производительность и емкость памяти,
но и пропускная способность канала ввода-вывода ВС.
Устройство маршрутизации ЭП обеспеч ивает транзитное прохождение сообщений по сети межпроцессорных связей без прерывания работы центрального процессора. Скорость передачи сообщений в nCube-2 составляет 2,75 Мбайт/с на один ДМА-канал. Реал изованный в ВС «механизм» маршрутизации позволяет автоматически оты^живать кратчайшие пути между взаимодействующими ЭП. Он предотвра дает также взаимную блоки-
ровку сообщений. Следовательно, пользовате. iи ВС освобождены от необходимости планировать маршруты для передачи сообщений по гиперкубическои сети.
Таким образом, nCube-2 система с г рограммируемой структурой.
Она, в частности, может быть рaзбита на под системы, каждая из которых способна реализовать свою параллельную про грамму одновременно c работой других подсистем.
Программное обеспечение nCube-2. Конфигурации ВС nCube-2 ос - нащаются параллельной программной среда PSE (Parallel Software Environment), интегрированной c операционной средой UNIX ведущей ВС. Сре-
да PSE поддерживает и моно-, и мультипрограммный режимы функционирования системы nCube-2. Следовательно, множество пользователей могут одновременно работать на ВС, причем каждому из них предоставляется возможность автономного контроля процесса выполнения своей программы.
Среда PSE обеспечивает совместимость (см. § 2.4) конфигураций ВС nCube-2, состоящих из различного числа ЭП. Совместимость «снизу вверх» в nCube-2 выражается в том, что программы решения сложных задач (см. разд. 3.3.4), разработанные для конфигураций ВС c небольшим числом ЭП, не требуют переделок при их переносе на конфигурацию системы большего
228
5.5. Семейство вычислительных систем ПсиЬе
размера. Наоборот, совместимость «сверху вниз» в ВС достигается при условии, что сложность (трудоемкость) задачи допускает ее вложение в кон-
фигypацию c меньшими ресурсами по сравнению c первоначальной.
Среда РЕ системы nCube-2 включает в себя следующие компоненты:
• раcпределеннyю ОС nСХ; |
|
• библиотеку стандартных UNIX-фyнкций (UNIX |
многопользова- |
тельская многозадачная ОС);
•набор драйверов (управляющих программ) для хост-интерфейса и ин-
терфейса ввода-вывода;
•средства параллельного программирования (для написания, комггилящш, отладки, запуска и анализа параллельных программ);
•библиотеку подпрограмм, обеспечивающих межпроцессорные взаимодействия;
•библиотеки подпрограмм для решения задач вычислительной матема-
тики;
•утилиты (обслуживающие программы) системного администратора;
•подсистему интерактивной (on-line) справочной документации.
Операционная система nCX осуществляет управление параллельными процессами и распределенной памятью, производит вызовы системных ИNIХ-функций, реализует передачи сообщений между элементарными про-
цессорами, поддерживает мультипрограммный режим работы nCube-2 и т. п. Данная ОС построена по <амикроядерной» теxнологии. Она представляется
множеством идентичных микроядер, распределенным по всем ЭП системы
nCube-2 (включая гиперкубический процессор и подсистему ввода-вывода).
Микроядро (Microkernel ) обеспечивает выполнение на ЭП такого минимума
операционных функций, которого достаточно для достижения функцио-
нaльной целостности множества ЭП как единой системы nCube-2. Объем микроядра для ВС nCube-2 не превышает 128 K байт (для сравнения: в системе СМ-2 он был равен 5 Мбайт).
Драйвер хост-интерфейса используется для взаимодействия системы nCube-2 c ведущей ВС. Драйверы интерфейса ввода-вывода служат для ра- боты nCube-2 c внешней памятью, устройствами ввода-вывода информации и сетью Ethernet. Драйверы распределяются по элементарным процессорам как гиперкубического процессора, так и подсистемы ввода-вывода nCube-2.
Среди компонентов параллельного программирования системы nCube-2 имеются:
•набор средств Express для распараллеливания программ, написанных на языках FORTRAN и C;
•пакет Linda стандартны программ для передачи сообщений и парал- лельно? обработки, используемый в качестве расширения для oбычны
последовательных языков программирования;
229
5.Матричные вычислительные системы
•языки параллельного программирования High Performance FORTRAN
иDataparallel C;
•компиляторы для языков программирован Сия;
•отладчик параллельных программ;
•набор программ для графических монито нов.
Ввычислительной системе nCube-2 для поддержки моно- и мультипрограммного режимов используются две пар адигмы параллельного про-
гpаммирования: SPMD и MPMD соответственн з.
Парадигма SPMD (Single Program Multiple Data, одна программа
множество данных) предопределяет:
., |
• загрузку в систему nCube-2 одной параш ллельной программы, состоя- |
., |
щей из множества идентичных ветвей;
•размещение в каждом ЭП своей ветви программы и своей порции
данных;
•одновременное выполнение в каждом ЭII своей ветви программы над своими данными и обмены информацией межд, у процессорами.
Парадигма MPMD (Multiple Program Multiple Data, множество программ множество данных) предусматривает:
•загрузку в систему набора параллельных программ;
•реализацию каждой программы на своей подсистеме (на своем связном подмножестве ЭП).
5.5.3. Вычислительная система nCube-3
Система nCube-3 полностью совместима ВС nCube-2, однако ее архитектypные характеристики существенно улучшены. Для ВС nCube-3 достyпна производительность в несколько TFLO PS. Емкость оперативной па-
мяти в максимальной конфигурации ВС оценивается значением от 1 Гбайт до 64 Тбайт.
Функциональная структура nCube-3 (в с равнении c nCube-2) характе-
ризуется значительно большим диапазоном масштабирования : от 8 до 64 К элементарных процессоров, от 3D-кyбa до 16D-куба.
Система nCube-3 располагает более эфф^ жтивной конфигурацией под-
системы ввода-вывода информации, называемой Parachannel. Эта подсисте-
ма представляется гиперкубической сетью процессоров ввода-вывода. Под-
система Parachannel допускает масштабироваi ие от 3D-кyбa до 13D-куба, в
ней может быть от 1 до 8 K процессоров ввода-вывода. Она связана c процессором nCube-3 каналами так, что каждыУ ее узел может обслуживать до 8 ЭП.
В системе nCube-3 реализован механизм виртуальной памяти. Он предоставляет каждому процессу адресное простраь ство в пределах до 256 Тбайт.
230
5.6. Анализ матричных вычислительных систем
Элементарный процессор nCube-3 по своей производительности превосходит в несколько раз ЭП системы nCube-2, a емкость его локальной памяти может составлять от 16 Мбайт до 1 Гбайт (вместо 4.. .64 Мбайт).
5.6. Анализ матричныx вычислительных систем
Матричные ВС, начиная c 60-х годов ХХ в., относятся к основным
концепциям построения сверхмощных средств ВТ. Матричный способ
обработки информации в отличие от конвейерного в принципе позволяет осуществлять неограниченное количество вычислительных процессов, следовательно, достичь любого уровня быстpодействия вычислительных средств.
Матричные ВС вариант технической реализации модели коллектива вычислителей. B таких системах в высокой степени воплощены фундаментальные архитектурные принципы.
1. Параллельность выполнения операций в матpичных ВС обеспечивается на нескольких функциональных уровнях. На макpоypовне параллель-
ность достигается за счет одновременной работы нескольких матричньх
процессоров (квадрантов в ILLIAC-N и процессорных подсистем в системах семейства Connection Machine).
На микроуровне параллельность выражается в возможности одно-
временной работы большого количества элементарных процессоров (64 ЭП
в квадранте и 256 ЭП в системе ILLIAC-IV; 16 384 ЭП в подсистеме и 65 536
ЭП в моделях СМ-1 и СМ-2 и 16384 ЭП в моделе СМ-5 семейства Соппес- tion Machine; 8192 ЭП в моделях nCube-1 и nCube-2 и 65 536 ЭП в модели nCube-5).
B современных сyперсистемах выделяются промежуточные функцио- нально-конструктивные образования из ЭП (обусловленные, в частности, технологическими возможностями элементарной базы). Так, в моделях СМ-1 и СМ-2 в качестве таких образований выступают процессорные кристаллы (узлы гиперкубической структуры). Эти кристаллы-узлы матричные процессоры, в каждом из которых все ЭП (их 16 в СМ) взаимодействуют друг c другом через п-мepнyю (двумерную в СМ-1) решетчатую структуру. На рассмотpенном уровне параллелизм также поддерживается: осуществляется параллельная работа элементарных процессоров в пределах каждого из кри- сталлов-узлов.
C развитием технологии БИС стало возможным построение параллельных суперВС на основе мощных 64-разрядных микропроцессорньх уз-
лов. Например, в ВС СМ- 5 в качестве основного функционально-конструк-
тивного образования выступает узел конфигурация из серийного SPARC-
231
5. Матричные вычислительны,? системы
микропроцессора, векторных конвейеров, памяти и средств для межузловых
обменов информацией. B моделях семейства B С nCube узел является заказ-
ным однокристальным ЭП (или композицией из процессора для целочисленных вычислении, двухступенчатого конвеиЕ ра для вещественных вычислений, памяти и средств для межпроцессорны взаимодействий). Следовательно, и в новейших суперВС параллельность выполнения операций также поддержана и на уровне отдельного узла.
Таким образом, современные суперВС, архитектура которых является результатом эволюционного развития канонического матричного процессора, являются системами c массовым параллелизмом (МРР-системами). B таких суперВС число параллельно выполняемых операций достигает порядков 10-105 Кроме того, вычислительные суперсист ^мы, точнее их функциональ- но-констpyктивные образования, впитали в себя решения, характерные для параллельно-векторных систем (РVР-систем).
2. Программируемость структуры в мах ричных системах изначально
проявлялась более сильно, чем в конвейерных. B самом деле, матричная ВС может быть так настроена, что ее различные квадранты или подсистемы будyт одновременно решать различные задачи. Кроме того, в пределах квадранта или подсистемы имеется возможность программировать направление передачи информации от каждого ЭП и, следовательно, настраивать канал связи между любыми ЭП. B матричных ВС зал ожены средства программного управления состоянием каждого ЭП. Послeднее позволяет матрицу или подсистему ЭП разбивать на группы, каждая и з которых может реализовать свой режим обработки данных. Следовательн з, на различных группах ЭП можно выполнять различные программы. Однако в силу того, что в квадранте или подсистеме имеется только одно ус гроиство управления, группы ЭП должны работать последовательно.
Итак, если в мультипрогpаммном режим пе в однопроцессорной ЭВМ имеет место разделение времени, то в матриц гной ВС разделение «простpанства» ЭП и системного времени. При этот различные задачи решаются на различных группах ЭП (состоящих из различного числа процессоров) и в различные (последовательные) отрезки врем мни. При такой организации мультипрогpаммного режима резко падает пр оизводительность всей системы, так как вместо параллельных вычислении проводятся последовательно-
параллельные и в пределе последовательные.
Матричные ВС располагают фyнкционально гибкой структурой сети
межпроцессорных связей. B первых системах (таких, как ILLIAC-IV), пре-
дельно близких к канонической структуре матричного процессора, сеть связей между ЭП представлялась двумерными реттетками.
B системах 1980-x и 1990-x годов двумерные решетки использовались для организации сети межпроцессорных связей только в пределах одного
232