MIMD

редактировать
MIMD.svg

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

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

СОДЕРЖАНИЕ

  • 1 Примеры
  • 2 Модель с общей памятью
    • 2.1 На основе шины
    • 2.2 Иерархический
  • 3 Распределенная память
    • 3.1 Сеть межсоединений Hypercube
    • 3.2 Ячеистая взаимосвязанная сеть
  • 4 См. Также
  • 5 ссылки

Примеры

Примером системы MIMD является Intel Xeon Phi, происходящий от микроархитектуры Larrabee. Эти процессоры имеют несколько процессорных ядер (до 61 по состоянию на 2015 год), которые могут выполнять разные инструкции с разными данными.

Большинство параллельных компьютеров по состоянию на 2013 год являются системами MIMD.

Модель с общей памятью

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

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

Существует множество примеров разделяемой памяти (мультипроцессоров): UMA ( унифицированный доступ к памяти ), COMA ( доступ только к кэш-памяти ).

На автобусе

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

Например, если мы рассмотрим шину с клиентами A, B, C, подключенными на одной стороне, и P, Q, R, подключенными на противоположной стороне, любой из клиентов будет связываться с другим посредством интерфейса шины между ними.

Иерархический

Машины MIMD с иерархической общей памятью используют иерархию шин (как, например, в « толстом дереве »), чтобы предоставить процессорам доступ к памяти друг друга. Процессоры на разных платах могут обмениваться данными через межузловые шины. Автобусы поддерживают связь между досками. С такой архитектурой машина может поддерживать более девяти тысяч процессоров.

Распределенная память

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

Примеры распределенной памяти (несколько компьютеров) включают MPP (процессоры с массовым параллелизмом), COW (кластеры рабочих станций) и NUMA ( неравномерный доступ к памяти ). Первый сложен и дорог: множество суперкомпьютеров соединены широкополосными сетями. Примеры включают соединения гиперкуба и сетки. COW - это "самодельная" версия за небольшую цену.

Сеть межсоединений Hypercube

В MIMD-машине с распределенной памятью с сетью взаимосвязей системы гиперкубов, содержащей четыре процессора, процессор и модуль памяти размещаются в каждой вершине квадрата. Диаметр системы - это минимальное количество шагов, которое требуется одному процессору для отправки сообщения процессору, который находится дальше всего. Так, например, диаметр 2-куба равен 2. В системе гиперкубов с восемью процессорами и каждым процессором и модулем памяти, размещенными в вершине куба, диаметр равен 3. В общем случае система, содержащая 2 ^ N процессоров, каждый из которых напрямую подключен к N другим процессорам, диаметр системы равен N.Один недостаток системы гиперкуба состоит в том, что она должна быть сконфигурирована в степени двойки, поэтому должна быть построена машина, которая потенциально могла бы иметь намного больше процессоров, чем это действительно необходимо для приложения.

Ячеистая взаимосвязанная сеть

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

Смотрите также

Рекомендации

Последняя правка сделана 2023-12-31 10:49:12
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте