ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 25.12.2021

Просмотров: 2464

Скачиваний: 7

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
background image

Системы с массовой параллельной обработкой (МРР)  6 0 1

Основные причины появления систем с массовой параллельной обработкой —

это, во-первых, необходимость построения ВС с гигантской производительностью
и, во-вторых, стремление раздвинуть границы производства ВС в большом диапа-

зоне, как производительности, так и стоимости. Для МРР-системы, в которой

количество процессоров может меняться в широких пределах, всегда реально по-

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

Если говорить о МРР как о представителе класса MIMD с распределенной па-

мятью и отвлечься от организации ввода/вывода, то эта архитектура является ес-

тественным расширением кластерной на большое число узлов. Отсюда для МРР-

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

с повышенным числом процессорных узлов как плюсы, так и минусы становятся

гораздо весомее.

Характерная черта МРР-систем — наличие единственного управляющего уст-

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

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

ному или нескольким классам. Схема взаимодействия в общих чертах довольно
проста:

-

 центральное управляющее устройство формирует очередь заданий, каждому из

которых назначается некоторый уровень приоритета;

- по мере освобождения подчиненных устройств им передаются задания из оче-

реди;

- подчиненные устройства оповещают центральный процессор о ходе выполне-

ния задания, в частности о завершении выполнения или о потребности в до-
полнительных ресурсах;

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

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

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

лизована как на аппаратном, так и на программном уровне.

Вовсе не обязательно, чтобы МРР-система имела распределенную оператив-

ную память, когда каждый процессорный узел владеет собственной локальной па-
мятью. Так, например, системы SPP1000/XA и SPP1200/XA [43] являют собой
пример ВС с массовым параллелизмом, память которых физически распределена
между узлами, но логически она общая для всей вычислительной системы. Тем не

менее большинство МРР-систем имеют как логически, так и физически распреде-
ленную память.

Благодаря свойству масштабируемости, МРР-системы являются сегодня ли-

дерами по достигнутой производительности; наиболее яркий пример этому — Intel

Paragon с 6768 процессорами. С другой стороны, распараллеливание в МРР-сис-

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


background image

6 0 2 Глава 14. Вычислительные системы класса MlМD

Амдала). Кроме того, достаточно трудно найти задачи, которые сумели бы эффек-

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

ний могут эффективно выполняться на МРР-системе, Имеет место также проблема
переносимости программ между системами с различной архитектурой. Эффектив-
ность распараллеливания во многих, случаях сильно зависит от деталей архитек-

туры МРР-системы, например топологии соединения процессорных узлов.

Самой эффективной была бы топология, в которой любой узел мог бы напря-

мую связаться с любым другим узлом, но в ВС на основе МРР это технически

трудно реализуемо. Как правило, процессорные узлы в современных МРР-компь-

ютерах образуют или двухмерную решетку (например, в SNI/Pyramid RM1000)
или гиперкуб (как в суперкомпьютерах nCube [8]).

Поскольку для синхронизации параллельно выполняющихся процессов необ-

ходим обмен сообщениями, которые должны доходить из любого узла системы
в любой другой узел, важной характеристикой является диаметр системы

 D.

 В слу-

чае двухмерной решетки

 D

 - sqrt(n), в случае гиперкуба

 D

 - 1n(n). Таким образом,

при увеличении числа узлов более выгодна архитектура гиперкуба.

Время передачи информации от узла к узлу зависит от стартовой задержки

и скорости передачи. В любом случае, за время передачи процессорные узлы успе-

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

связи. Поэтому инфраструктура каналов связи в МРР-системах является объек-

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

Слабым местом МРР было и есть центральное управляющее устройство (ЦУУ) -

при выходе его из строя вся система оказывается неработоспособной. Повышение
надежности ЦУ У лежит на путях упрощения аппаратуры ЦУУ и/или ее дублиро-
вания.

Несмотря на все сложности, сфера применения ВС с массовым параллелизмом

постоянно расширяется. Различные системы этого класса эксплуатируются во
многих ведущих суперкомпьютерных центрах мира. Следует особенно отметить
компьютеры Cray T3D и Cray T3E, которые иллюстрируют тот факт, что мировой

лидер производства векторных суперЭВМ, компания Cray Research, уже не ори-

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

что суперкомпьютерный проект министерства энергетики США основан на МРР-
системе на базе Pentium.

На рис. 14.14 показана структура МРР-системы RM1000, разработанной фир-

мой Pyramid.

В RM1000 используются микропроцессоры типа MIPS. Каждый узел содер-

жит процессор R4400, сетевую карту Ethernet и два канала ввода/вывода типа SCSI.

Реализованный вариант включает в себя 192 узла, но сеть соединений предусмат-

ривает масштабирование до 4096 узлов. Каждый узел имеет коммуникационный

компонент для подключения к соединяющей сети, организованной по топологии

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

с четырьмя двунаправленными линиями для связи с соседними узлами и одной
линией для подключения к данному процессорному узлу. Скорость передачи ин-
формации в каждом направлении — 50 Мбит/с.


background image

Вычислительные системы с неоднородным доступом к памяти  6 0 3

Рис. 14.14. Структура МРР-системы RM1000

Каждый узел работает под управлением своей копии операционной систе-

мы, управляет «своими»- периферийными устройствами и обменивается с дру-

гими узлами путем пересылки сообщений по сети соединений. Операционная

система содержит средства для повышения надежности и коэффициента го-
трвности.

Отметим, что при создании МРР-систем разные фирмы отдают предпочтение

различным микропроцессорам и топологиям сетей соединений (табл, 14.2).

Таблица 14.2. Основные характеристики некоторых МРР-систем

Вычислительные системы с неоднородным

доступом к памяти

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

типроцессорных систем, это SMP, МРР и кластеры. Наряду с ними в последнее

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

доступа к памяти (NUMA, Non-Uniform Memory Access), точнее с кэш-когерент-

ным доступом к неоднородной памяти (CC-NUMA).


background image

6 0 4 Глава 14. Вычислительные системы класса MIMD

В симметричных мультипроцессорных вычислительных системах (SMP) име-

ет место практический предел числа составляющих их процессоров. Эффектив-

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

таким пределом становится число процессоров в пределах от 16 до 64. Например,
объем SMP-системы Silicon Graphics Power Challenge ограничен 64 процессорами

R10000, поскольку при дальнейшем увеличении числа процессоров производитель-

ность падает.

Ограничение на число процессоров в архитектуре SMP служит побудительным

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

является технология CC-NUMA. Например, NUMA-система Silicon Graphics Origin

поддерживает до 1024 процессоров R10000 [223], a Sequent NUMA-Q объединяет
252 процессора Pentium II [157].

На рис. 14.15 показана типичная организация систем типа CC-NUMA [36].

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

собой, например, SMP-систему. Таким образом, узел содержит множество процес-

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

В архитектуре CC-NUMA узел выступает основным строительным блоком. На-

пример, каждый узел в системе Silicon Graphics Origin содержит два микропроцес-
сора MIPS R10000, а каждый узел системы Sequent NUMA-Q включает в себя че-

тыре процессора Pentium II. Узлы объединяются с помощью какой-либо сети
соединений, которая представлена коммутируемой матрицей, кольцом или

имеет иную топологию.

Согласно технологии CC-NUMA, каждый узел в системе владеет собственной

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

ячейка отсутствует в его локальной кэш-памяти, кэш-память второго уровня (L2)

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

В данной конфигурации главная забота — когерентность кэшей. Хотя отдель-

ные реализации и отличаются в деталях, общим является то, что каждый узел со-


background image

Вычислительные системы с неоднородным доступом к памяти  6 0 5

Рис. 14.15. Организация систем типа CC-NUMA

держит справочник, где хранится информация о местоположении в системе каж-
дой составляющей глобальной памяти, а также о состоянии кэш-памяти.

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

приведенным в [182]. Пусть процессор 3 узла 2 (Р2.3) запрашивает ячейку с адре-

сом 798, расположенную в узле 1. Будет наблюдаться такая последовательность
действий:

1. Р2.3 выдает на шину наблюдения узла 2 запрос чтения ячейки 798.

2. Справочник узла 2 видит запрос и распознает, что нужная ячейка находится

в узле 1.

3. Справочник узла 2 посылает запрос узлу 1, который принимается справочни-

ком узла 1.

4. Справочник основной памяти 1, действуя как заменитель процессора Р2.3, за-

прашивает ячейку 798, так как будто он сам является процессором.

5. Основная память узла 1 реагирует тем, что помещает затребованные данные

на локальную шину узла 1.

6. Справочник узла 1 перехватывает данные с шины.
7. Считанное значение через сеть соединений передается обратно в справочник

узла 2.

8. Справочник узла 2 помещает полученные данные на локальную шину узла 2,

действуя при этом как заместитель той части памяти, где эти данные фактичес-

ки хранятся.


Смотрите также файлы