Архитектура mimd

Автор: Пользователь скрыл имя, 13 Января 2011 в 00:56, творческая работа

Описание работы

•МКМД(MIMD) (multiple instruction stream / multiple data stream) - множественный поток команд и множественный поток данных.
Этот класс предполагает, что в вычислительной системе есть несколько устройств обработки команд, объединенных в единый комплекс и работающих каждый - со своим потоком команд и данных.

Работа содержит 1 файл

MIMD.ppt

— 689.50 Кб (Скачать)

MIMD

Класс MIMD* 

  • МКМД(MIMD) (multiple instruction stream / multiple data stream) - множественный поток команд и множественный поток данных.

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

      *)В классификации архитектур вычислительных систем, предложенной в 1966 году М.Флинном. Классификация базируется на понятии потока, под которым понимается последовательность элементов, команд или данных, обрабатываемая процессором.

На основе числа  потоков команд и потоков данных  Флинн выделяет четыре класса  архитектур: ОКОД(SISD),  МКОД(MISD), ОКМД(SIMD), МКМД(MIMD).

Классификация  Хокни* 

MIMD 

переключаемые 

конвейерные 

сети 

С виртуальной

общей памятью 

С распределенной 

памятью 

Регулярные 

решетки 

гиперкубы 

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

структуры 

Изменяющие 

конфигурацию 
 

С общей  памятью 
 

  • Переключаемые
    • с общей памятью
    • с общей виртуальной памятью
    • с распределённой памятью
  • Конвейерные
  • Сети
    • решетки
    • гиперкубы
    • иерархические структуры
    • изменяющие конфигурацию
 

*) Р. Хокни (R. Hockney) - известный английский специалист в области параллельных вычислительных систем, разработал свой подход к классификации, введенной им для систематизации компьютеров, попадающих в класс MIMD по систематике Флинна.

Переключаемые 

  • Компьютеры  с распределенной  памятью (Distributed memory)

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

  • Компьютеры  с общей (разделяемой) памятью (True shared memory)

          Все процессоры совместно  обращаются к общей памяти, обычно, через шину или иерархию шин. В идеализированной PRAM (Parallel Random Access Machine - параллельная машина с произвольным  доступом) модели, часто используемой  в теоретических исследованиях  параллельных алгоритмов, любой  процессор может обращаться к  любой ячейке памяти за одно  и то же время. На практике  масштабируемость этой архитектуры  обычно приводит к некоторой  форме иерархии памяти. Частота  обращений к общей памяти может  быть уменьшена за счет сохранения  копий часто используемых данных  в кэш-памяти, связанной с каждым  процессором. Доступ к этому кэш-памяти  намного быстрее, чем непосредственно  доступ к общей памяти. 

  • Компьютеры  с виртуальной  общей (разделяемой) памятью (Virtual shared memory)

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

Переключаемые с общей памятью

Переключаемые с распределенной памятью

Конвейерные 

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

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

Сетевые структуры 

При рассмотрении MIMD машин с сетевой структурой  считается, что все они

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

соответствии с  топологией сети:

    • звездообразная сеть (lCAP),
    • регулярные решетки разной размерности (Intel Paragon, CRAY T3D),
    • гиперкубы (NCube, Intel iPCS),
    • сети с иерархической структурой, такой, как деревья, пирамиды, кластеры (Cm* , CEDAR),
    • сети, изменяющие свою конфигурацию.

Сетевая структура: решетка, гиперкуб 

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

Сетевая структура: полный граф связей 

  • В топологии  клика (полный граф связей) каждый процессор должен быть соединен со всеми другими процессорами.

Гибридные  типы 

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

Информация о работе Архитектура mimd