Минимальный элемент памяти (бит) способен хранить минимально возможный объем
информации — одну двоичную цифру. Биты в памяти любого вида объединяются в байты — восьмерки битов. Принято для именования байтов использовать неотрицательные целые числа и говорить о номерах или адресах байтов.
Процессор мол-сет прочитать нечто из байта памяти с адресом /V или записать нечто в этот байт. Для этого от процессора к памяти должен поступить адрес байта, а сам байт информации должен быть передан от процессора к памяти (при записи) или от памяти к процессору (при чтении). Эта информация передается по проводам. Провода разделены на два пучка, называемые шинами.
Одна часть проводов называется шина адреса, другая — шина данных. Адрес байта передается по шине адреса, а байт — по шине данных.
Число проводов в шине данных называется разрядностью шины. Обычно разрядность равна 8, 16, 32 или 64.
SMP-архитектура.
SMP архитектура (symmetric multiprocessing) - cимметричная многопроцессорная архитектура. Главной особенностью систем с архитектурой SMP является наличие общей физической памяти, разделяемой всеми процессорами Память является способом передачи сообщений между процессорами, при этом все вычислительные устройства при обращении к ней имеют равные права и одну и ту же адресацию для всех ячеек памяти. Поэтому SMP архитектура называется симметричной. Последнее обстоятельство позволяет очень эффективно обмениваться данными с другими вычислительными устройствами. SMP-система строится на основе высоко скоростной системной шины (SGI PowerPath, Sun Gigaplane, DEC TurboLaser), к слотам которой подключаются функциональные блоки трех типов: процессоры (ЦП), операционная система (ОП) и подсистема ввода/вывода (I/O). Для подсоединения к модулям I/O используются уже более медленные шины (PCI, VME64). Наиболее известными SMP-системами являются машины серий SGI Power Chalenge, DEC Alpha Server, Cray T3D. Вся система работает под управлением единой ОС (обычно UNIX-подобной, но для Intel-платформ поддерживается Windows NT). ОС автоматически (в процессе работы) распределяет процессы по процессорам, но иногда возможна и явная привязка.
Основные преимущества SMP-систем:
· простота и универсальность для программирования. Архитектура SMP не накладывает ограничений на модель программирования, используемую при создании приложения: обычно используется модель параллельных ветвей, когда все процессоры работают абсолютно независимо друг от друга, - однако, можно реализовать и модели, использующие межпроцессорный обмен. Использование общей памяти увеличивает скорость такого обмена, пользователь также имеет доступ сразу ко всему объему памяти. Для SMP-систем существуют сравнительно эффективные средства автоматического распараллеливания.
· легкость в эксплуатации. Как правило, SMP-системы используют систему охлаждения, основанную на воздушном кондиционировании, что облегчает их техническое обслуживание.
· относительно невысокая цена.
Недостатки:
· системы с общей памятью, построенные на системной шине, плохо масштабируемы
Этот важный недостаток SMP-системы, не позволяет считать их по-настоящему перспективными. Причины плохой масштабируемости состоят в том, что в данный момент шина способна обрабатывать только одну транзакцию, вследствие чего возникают проблемы разрешения конфликтов при одновременном обращении нескольких процессоров к одним и тем же областям общей физической памяти. Вычислительные элементы начинают друг другу мешать. Когда произойдет такой конфликт, зависит от скорости связи и от количества вычислительных элементов. В настоящее время конфликты могут происходить при наличии 8-24-х процессоров. Кроме того, системная шина имеет ограниченную (хоть и высокую) пропускную способность (ПС) и ограниченное число слотов. Все это с очевидностью препятствует увеличению производительности при увеличении числа процессоров и числа подключаемых пользователей. В реальных системах можно использовать не более 32 процессоров. Рекорд в этом отношении принадлежит фирме SUN. Произведенный ею суперкомпьютер SUN Enterprise (Sun Fire) 15000 может иметь до 72 UltraSparc III 900 МГц процессоров SMP архитектуры. Наиболее известным суперкомпьютерным серверами SMP-архитектуры являются также ORIGIN серии 3000, и системы V класса компании Hewlett Packard. Максимальная производительность SMP системы может составлять приблизительно 50 миллиардов операций в секунду. Для большинства современных приложений это приемлемо, но не для всех.При работе с SMP системами используют так называемую парадигму программирования с разделяемой памятью (shared memory paradigm).
MPP-архитектура.
MPP архитектура (massive parallel processing) - массивно-параллельная архитектура. Главная особенность такой архитектуры состоит в том, что память физически разделена. В этом случае система строится из отдельных модулей, содержащих процессор, локальный банк операционной памяти (ОП), два коммуникационных процессора (рутера) или сетевой адаптер, иногда - жесткие диски и/или другие устройства ввода/вывода. Один рутер используется для передачи команд, другой - для передачи данных. По сути, такие модули представляют собой полнофункциональные компьютеры. (см. рис.). Доступ к банку ОП из данного модуля имеет только процессоры (ЦП) из этого же модуля. Модули соединяются специальными коммуникационными каналами. Пользователь может определить логический номер процессора, к которому он подключен, и организовать обмен сообщениями с другими процессорами. Используются два варианта работы операционной системы (ОС) на машинах MPP архитектуры. В одном, полноценная операционная система (ОС) работает только на управляющей машине (front-end), на каждом отдельном модуле работает сильно урезанный вариант ОС, обеспечивающий работу только расположенной в нем ветви параллельного приложения. Во втором варианте, на каждом модуле работает полноценная UNIX-подобная ОС, устанавливаемая отдельно на каждом модуле.
Главное преимущество:
- Главным преимуществом систем с раздельной памятью является хорошая масштабируемость: в отличие от SMP-систем в машинах с раздельной памятью каждый процессор имеет доступ только к своей локальной памяти, в связи с чем не возникает необходимости в потактовой синхронизации процессоров. Практически все рекорды по производительности на сегодняшний день устанавливаются на машинах именно такой архитектуры, состоящих из нескольких тысяч процессоров (ASCI Red, Blue Pacific).
Недостатки:
- отсутствие общей памяти заметно снижает скорость межпроцессорного обмена, поскольку нет общей среды для хранения данных, предназначенных для обмена между процессорами. Требуется специальная техника программирования для реализации обмена сообщениями между процессорами.
- каждый процессор может использовать только ограниченный объем локального банка памяти.
- вследствие указанных архитектурных недостатков требуются значительные усилия для того, чтобы максимально использовать системные ресурсы. Именно этим определяется высокая цена программного обеспечения для массивно-параллельных систем с раздельной памятью.
- Системами с раздельной памятью являются суперкомпьютеры IBM RS/6000 SP2, Intel PARAGON/ASCI Red, SGI/CRAY T3E, Hitachi SR8000, транспьютерные системы Parsytec. Машины последней серии CRAY T3E от SGI, основанные на базе процессоров Dec Alpha 21164 с пиковой производительностью 1200 Мфлопс/с (CRAY T3E-1200), способны масштабироваться до 2048 процессоров. Другая машина этой серии CRAY T3E-900 в конфигурации 1248 процессоров, инсталлированная в правительстве США, показала на Linpack-тесте производительность, равную 634.2 Гфлопс/с. При работе с MPP системами используют так называемую Massive Passing Programming Paradigm -парадигму программирования с передачей данных (MPI, PVM, BSPlib).