Читайте также:
|
|
ВС данной архитектуры позволяют выполнять одну арифметическую операцию сразу над многими данными – элементами вектора. Представителями этого класса считаются матрицы процессоров, где единое управляющее устройство контролирует множество процессорных элементов. Все процессорные элементы получают от устройства управления одинаковую команду и выполняют ее над своими локальными данными. В этот класс включаются векторно – конвейерные ВС
|
|
|
|
|
|
Даные
Данные
Данные
Рис.
MIMD – множественный поток команд и множественный поток данных. Предполагает наличие у вычислительной системе множества устройств обработки команд, объединенных в единый комплекс и работающих каждое со своим потоком команд и данных. Класс MIMD чрезвычайно широк, поскольку включает в себя всевозможные мультипроцессорные системы.
Организация памяти вычислительных систем.
В ВС, которые объединяют в себе множество проц6ессоров или машин, задача правильной организации памяти является одной из важнейших. Различие между быстродействием процессора и памяти всегда было камнем преткновения в однопроцессорных ВМ. Многопроцессорность ВС приводит к еще одной проблеме – проблеме одновременного доступа к памяти со стороны нескольких процессоров.
В зависимости от того, каким образом организована память многопроцессорных систем, различают ВС общей памятью и ВС з распределенной памятью. В системах с общей памятью (совместно используемой) память В рассматривается как общий ресурс и каждый процессор имеет полный доступ ко всему адресному пространству. Системы с общей памятью называют сильно связанными. Подобное построение имеет место как в классе SIMD, так и в классе MIMD.
В варианте с распределенной памятью каждому из процессоров придается собственная память. Процессоры объединяются в сеть и могут при необходимости обмениваться данными,хранящимися в их памяти, передавая друг другу так называемые сообщения. Такой вид ВС называют слабо связанными.
В некоторых случаях ВС с общей памятью называют мультипроцессорами, а ВС с распределенной памятью – мультикомьютерами.
Различие между общей и распределенной памятью – это различие в структуре виртуальной памяти, то есть в том, как память выглядит со стороны процессора. Физически почти каждая система памяти разделена на автономные компоненты, доступ к которым может производиться независимо. Общую память от распределенной отличает то, каким образом подсистема памяти интерпретирует поступивший от процессора адрес ячейки. Для примера положим, что процессор выполняет команду load Ro, i. В случае общей памяти адресс i – это глобальный адрес и для каждого процессора указывается одна и та же ячейка. В случае распределенной памяти I – это локальный адрес. Если несколько процессоров выполняют одну и ту же команду, то в их регистры будут загружены разные данные.
Различие между двумя системами памяти должно учитываться программистами, поскольку оно определяет способ взаимодействия частей распределенной программы. В варианте с общей памятью достаточно создать в памяти структуру данных и передавать в параллельно используемые подпрограммы ссылки на эту структуру. В системах с распределенной памятью необходимо в каждой локальной памяти иметь копию совместно используемых данных. Эти копии создаются путем вкладывания разделяемых данных в сообщения, посылаемые другим процессорам.
Дата добавления: 2015-09-10; просмотров: 225 | Поможем написать вашу работу | Нарушение авторских прав |