ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 25.12.2021
Просмотров: 2461
Скачиваний: 7
Симметричные мультипроцессорные системы 5 9 1
Общая шина позволяет легко расширять систему путем подключения к себе боль-
шего числа процессоров. Кроме того, напомним, что шина — это, по существу, пас-
сивная среда, и отказ одного из подключенных к ней устройств не влечет отказа
всей совокупности.
В то же время SMP-системам на базе общей шины свойственен и основной не-
достаток шинной организации — невысокая производительность: скорость систе-
мы ограничена временем цикла шины. По этой причине каждый процессор снаб-
жен кэш-памятью, что существенно уменьшает число обращений к шине. Наличие
множества кэшей порождает проблему их когерентности, и это одна из основных
причин, по которой системы на базе общей шины обычно содержат не слишком
много процессоров. Так, в системах Compaq AlphaServer GS140 и 8400 используется
неболее 14 процессоров Alpha 21264. SMP-система HPN9000 в максимальном вари-
анте состоит из 8 процессоров РА-8500, а система SMP Thin Nodes для RS/6000 фир-
мы IBM может включать в себя от двух до четырех процессоров PowerPC 604.
Архитектура с общей шиной широко распространена в SMP-системах, постро-
енных на микропроцессорах х86. В эту группу входят: DELL Power Edge, IBM
Netfinity, HP NetServer. На рис. 14.6 показана структура симметричной мульти-
процессорной вычислительной системы на базе микропроцессоров Pentium III.
Рис, 14.6. Структура SMP-системы на базе микропроцессоров Pentium III
Архитектура с коммутатором типа «кроссбар»
Архитектура с коммутатором типа «кроссбар»- (рис. 14.7) ориентирована на мо-
дульное построение общей памяти и призвана разрешить проблему ограниченной
цропускной способности систем с общей шиной.
5 9 2 Глава 14. Вычислительные системы класса MIMD
Рис. 14.7. Структура SMP-системы с коммутатором типа «кроссбар»
Коммутатор обеспечивает множественность путей между процессорами и бан-
ками памяти, причем топология связей может быть как двумерной, так и трехмер-
ной. Результатом становится более высокая полоса пропускания, что позволяет
строить SMP-системы, содержащие больше процессоров, чем в случае общей шины.
Типичное число процессоров в SMP-системах на базе матричного коммутатора
составляет 32 или 64. Отметим, что выигрыш в производительности достигается,
лишь когда разные процессоры обращаются к разным банкам памяти.
По логике кроссбара строится и взаимодействие процессоров с устройствами
ввода/вывода.
В качестве примера ВС с рассмотренной архитектурой можно привести систе-
му Enterprise 10000, состоящую из 64 процессоров, связанных с памятью посред-
ством матричного коммутатора Gigaplane-XB фирмы Sun Microsystems (кроссбар
16 х 16), В IBM RS/6000 Enterprise Server Model S70 коммутатор типа «кроссбар»
обеспечивает работу 12 процессоров RS64. В SMP-системах ProLiant 8000 и 8500
фирмы Compaq для объединения с памятью и между собой восьми процессоров
Pentium III Хеоп применена комбинация нескольких шин и кроссбара.
Концепция матричного коммутатора (кроссбара) не ограничивается симмет-
ричными мультипроцессорами. Аналогичная структура связей применяется для объ-
единения узлов в ВС типа CC-NUMA и кластерных вычислительных системах.
Архитектура с многопортовой памятью
Многопортовая организация запоминающего устройства обеспечивает любому
процессору и модулю ввода/вывода прямой и непосредственный доступ к банкам
основной памяти (ОП). Такой подход сложнее, чем при использовании шины,
Кластерные вычислительные системы 5 9 3
поскольку требует придания ЗУ основной памяти дополнительной, достаточно
сложной логики. Тем не менее это позволяет поднять производительность, так как
каждый процессор имеет выделенный тракт к каждому модулю ОП. Другое преи-
мущество многопортовой организации — возможность назначить отдельные мо-
дули памяти в качестве локальной памяти отдельного процессора. Эта особенность
позволяет улучшить защиту данных от несанкционированного доступа со сторо-
ны других процессоров.
Архитектура с централизованным
устройством управления
Централизованное устройство управления (ЦУУ) сводит вместе отдельные пото-
ки данных между независимыми модулями: процессором, памятью, устройствами
ввода/вывода. ЦУУ может буферйзировать запросы, выполнять синхронизацию
и арбитраж. Оно способно передавать между процессорами информацию о состо-
янии и управляющие сообщения, а также предупреждать об изменении информа-
ции в кэшах. Недостаток такой организации заключается в сложности устройства
управления, что становится потенциальным узким местом в плане производитель-
ности. В настоящее время подобная архитектура встречается достаточно редко, но
она широко использовалась при создании вычислительных систем на базе машин
семейства IBM 370.
Кластерные вычислительные системы
Одно из самых современных направлений в области создания вычислитель-
ных систем — это
кластеризация.
По производительности и коэффициенту
готовности кластеризация представляет собой альтернативу симметричным
мультипроцессорным системам. Понятие
кластер
определим как группу вза-
имно соединенных вычислительных систем (узлов), работающих совместно,
составляя единый вычислительный ресурс и создавая иллюзию наличия един-
ственной ВМ. В качестве узла кластера может выступать как однопроцессор-
ная ВМ, так и ВС типа SMP или МРР. Важно лишь то, что каждый узел в со-
стоянии функционировать самостоятельно и отдельно от кластера. В плане
архитектуры суть кластерных вычислений сводится к объединению несколь-
ких узлов высокоскоростной сетью. Для описания такого подхода, помимо тер-
мина «кластерные вычисления», достаточно часто применяют такие названия,
как:
кластер рабочих станций
(workstation cluster),
гипервычисления
(hypercom-
puting),
параллельные вычисления на базе сети
(network-based concurrent
computing),
ультравычисления
(ultracomputing).
Изначально перед кластерами ставились две задачи: достичь большой вычис-
лительной мощности и обеспечить повышенную надежность ВС. Пионером в об-
ласти кластерных архитектур считается корпорация DEC, создавшая первый ком-
мерческий кластер в начале 80-х годов прошлого века.
В качестве узлов кластеров могут использоваться как одинаковые ВС (гомо-
генные кластеры), так и разные (гетерогенные кластеры). По своей архитектуре
кластерная ВС является слабо связанной системой.
5 9 4 Глава 14. Вычислительные системы класса MIMD
В работе [65] перечисляются четыре преимущества, достигаемые с помощью
кластеризации:
-
Абсолютная масштабируемость.
Возможно создание больших кластеров,
превосходящих по вычислительной мощности даже самые производительные
одиночные ВМ. Кластер в состоянии содержать десятки узлов, каждый из ко-
торых представляет собой мультипроцессор.
-
Наращиваемая масштабируемость.
Кластер строится так, что его можно на-
ращивать, добавляя новые узлы небольшими порциями. Таким образом, пользо-
ватель может начать с умеренной системы, расширяя ее по мере необходимости.
-
Высокий коэффициент готовности.
Поскольку каждый узел кластера
—
само-
стоятельная ВМ или ВС, отказ одного из узлов не приводит к потере работо-
способности кластера. Во многих системах отказоустойчивость автоматически
поддерживается программным обеспечением.
-
Превосходное соотношение цена/производительность.
Кластер любой про-
изводительности можно создать, соединяя стандартные «строительные блоки»-,
при этом его стоимость будет ниже, чем у одиночной ВМ с эквивалентной вы-
числительной мощностью.
На уровне аппаратного обеспечения кластер — это просто совокупность неза-
висимых вычислительных систем, объединенных сетью. При соединении машин
в кластер почти всегда поддерживаются прямые межмашинные связи. Решения
могут быть простыми, основывающимися на аппаратуре Ethernet, или сложными
с высокоскоростными сетями с пропускной способностью в сотни мегабайтов в се-
кунду. К последней категории относятся RS/6000 SP компании IBM, системы
фирмы Digital на основе Memory Channel, ServerNet корпорации Compaq.
Узлы кластера контролируют работоспособность друг друга и обмениваются
специфической, характерной для кластера информацией. Контроль работоспособ-
ности осуществляется с помощью специального сигнала, часто называемого
heart-
beat,
что можно перевести как «сердцебиение». Этот сигнал передается узлами
кластера друг другу, чтобы подтвердить их нормальное функционирование.
Неотъемлемая часть кластера — специализированное программное обеспече-
ние (ПО), на которое возлагается задача обеспечения бесперебойной работы при
отказе одного или нескольких узлов. Такое ПО производит перераспределение
вычислительной нагрузки при отказе одного или нескольких узлов кластера, а так-
же восстановление вычислений при сбое в узле. Кроме того, при наличии в кластере
совместно используемых дисков кластерное ПО поддерживает единую файловую
систему.
Классификация архитектур кластерных систем
В литературе приводятся различные способы классификации кластеров. Так,
в простейшем варианте ориентируются на то, являются ли диски в кластере разде-
ляемыми всеми узлами. На рис. 14.8,
а
показан кластер из двух узлов, совместная
работа которых координируется за счет высокоскоростной линии, по которой про-
исходит обмен сообщениями. Такой линией может быть локальная сеть, исполь-
зуемая также и не входящими в кластер компьютерами, либо выделенная линия.
Кластерные вычислительные системы
5 9 5
В последнем случае один или несколько узлов кластера будут иметь выход на ло-
кальную или глобальную сеть, благодаря чему обеспечивается связь между сер-
верным кластером и удаленными клиентскими системами.
б
Рис.
14.8.
Конфигурации кластеров: а
—
без совместно используемых дисков;
б —
с совместно используемыми дисками
Более ясную картину дает группировка кластеров на основе сходства их функ-
циональных особенностей. Такая классификация приведена в табл. 14.1.
Таблица 14.1.
Методы кластеризации