Классификация организации вычислительных систем

М. Флинном (М. I. Flynn) была предложена классификация вычислительных систем в зависимости от числа используемых в них операционных блоков (процессоров), характеристик потоков обрабатываемых данных и организации их обработки. Эта классификация приведена на схеме, представленной на рис. 15.5.

Классификация организации вычислительных систем

Рис. 15.5. Классификация организации вычислительных систем

Рассмотрим представленные на схеме разновидности организации вычислительных систем.

Система с одинарным потоком команд и одинарным потоком данных — SISD-системы (single instruction, single data stream) (рис. 15.6).

Система с одинарными потоками команд и данных

Рис. 15.6. Система с одинарными потоками команд и данных

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

К этой категории относятся все классические однопроцессорные системы.

Система с одинарным потоком команд и множественным потоком данных — SIMD-системы (single instruction, multiple data stream) (рис. 15.7)

Система с одинарным потоком команд и множественным потоком данных

Рис. 15.7. Система с одинарным потоком команд и множественным потоком данных

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

К этой категории вычислительных систем принадлежат векторные системы.

Система с множественным потоком команд и одинарным потоком данных — MISD-система (multiple instruction, single data stream)

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

Такая структура до сих пор не нашла практического воплощения и применения.

Система с множественным потоком команд и множественным потоком данных — MIMD-система (multiple instruction, multiple data stream)

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

MIMD-система с общей памятью (рис. 15.8)

MIMD-система с общей памятью

Рис 15.8. MIMD-система с общей памятью

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

Такие системы получили название симметричных многопроцессорных систем, или SMP-систем (symmetric multiprocessor).

MIMD-система с распределенной памятью (рис. 15.9)

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

Глядя на схему, представленную на рис. 15.9, можно обратить внимание на то, что структура каждого процессорного узла в точности совпадает с представленной на рис. 15.6 схемой системы с одинарными потоками команд и данных, проще говоря — со схемой классической однопроцессорной ЭВМ.

MIMD-система с распределенной памятью

Рис. 15.9. MIMD-система с распределенной памятью

Обе эти схемы (с общей и распределенной памятью) многопроцессорных систем в настоящее время нашли широкое применение. Рассмотрим их характеристики более подробно.

Симметричные мультипроцессорные (SMP) системы

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

Для SMP компьютерных систем характерно:

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

Отметим преимущества SMP-систем перед однопроцессорными системами.

  • • Повышение производительности. Отдельные задачи и приложения могут выполняться параллельно.
  • • Надежность. Поскольку все процессоры однотипны и могут выполнять одни и те же задачи, в случае отказа одного из процессоров выполнение задач может перераспределяться между другими процессорами.
  • • Возможность функционального наращивания. Если это предусмотрено конструктивом системы, пользователь может повышать ее производительность, включая в ее состав дополнительные процессоры.

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

Кластеры как альтернатива SMP-системам

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

Кластеры обладают следующими преимуществами.

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

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

Контрольные вопросы

  • 1. В чем состоят идеи повышения производительности ЭВМ путем распараллеливания и конвейеризации процессов?
  • 2. Что такое опережающая выборка команд?
  • 3. За счет чего происходит увеличение производительности ЭВМ при использовании конвейера команд?
  • 4. Классификация вычислительных систем.
  • 5. Сравнение высокопроизводительных вычислительных систем на базе SMP-систем и кластеров.
 
Посмотреть оригинал
< Пред   СОДЕРЖАНИЕ   ОРИГИНАЛ     След >