Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
БЖД / Дипломный проект Калинин Е.А. 10.05.11 (финал).doc
Скачиваний:
78
Добавлен:
19.03.2015
Размер:
2.33 Mб
Скачать

1.2 Архитектура суперкомпьютеров.

В соответствии с классичесой систематикой Флинна, все компьютеры делятся на четыре класса (рис. 1.2) в зависимости от числа потоков команд и данных [4].

Архитектура

Суперкомпьютеров

SIMD

MISD

MIMD

SISD

NUMA

UMA

COMA

ccNUMA

PVP

SMP

nccNUMA

Рис 1.2. Архитектура суперкомпьютеров

К первому классу (последовательные компьютеры фон Неймана) принадлежат обычные скалярные однопроцессорные системы: одиночный поток команд - одиночный поток данных (SISD). Персональный компьютер имеет архитектуру SISD (рис. 1.3), причем не важно, используются ли в ПК конвейеры для ускорения выполнения операций.

Процессор

Контроллер

Память

Рис 1.3. Архитектура Single Instruction, Single Data

Второй класс характеризуется наличием одиночного потока команд, но множественного потока данных (SIMD). К этому архитектурному классу принадлежат однопроцессорные векторные или, точнее говоря, векторно-конвейерные суперкомпьютеры. В этом случае мы имеем дело с одним потоком (векторных) команд, а потоков данных - много: каждый элемент вектора входит в отдельный поток данных. К этому же классу вычислительных систем относятся матричные процессоры. Они также имеют векторные команды и реализуют векторную обработку, но не посредством конвейеров, как в векторных суперкомпьютерах, а с помощью матриц процессоров [5].

Высокоскоростное соединение

Локальная память

Локальная память

Локальная память

Процессор

Процессор

Процессор

Контроллер

Хост Компьютер

Рис. 1.4. Архитектура single instruction, multiple data

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

Процессор

Процессор

Процессор

Контроллер

Контроллер

Контроллер

Общая память

Рис 1.5. Архитектура Multiple Instruction stream, Multiple Data stream

Рассмотрим архитектуру NUMA (рис. 1.6) , относящуюся к классу MIMD

Процессор

Процессор

КЭШ

КЭШ

Оперативная память

Оперативная память

Сеть передачи данных

Рис. 1.6 Архитектура NUMA

NUMA состоит из однородных базовых узлов, содержащих небольшое число процессоров с модулями основной памяти. Практически все архитектуры ЦПУ используют небольшое количество очень быстрой неразделяемой памяти, известной как кеш, который ускоряет обращение к часто требуемым данным. В NUMA поддержка когерентности через разделяемую память даёт существенное преимущество в производительности. Хотя системы с некогерентным доступом к NUMA проще проектировать и создавать, становится предельно сложно создавать программы в классической модели архитектуры фон Неймана. В результате, все продаваемые NUMA компьютеры используют специальные аппаратные решения для достижения когерентности кеша, и классифицируются как кеш-когерентные системы с распределенной разделяемой памятью, или ccNUMA. Как правило, существует межпроцессорное взаимодействие между контроллерами кеша для сохранения согласованной картины памяти (когерентность памяти), когда более чем один кеш хранит одну и ту же ячейку памяти. Именно поэтому, ccNUMA платформы теряют в производительности, когда несколько процессоров подряд пытаются получить доступ к одному блоку памяти [6].

Так же рассмотрим архитектуру UMA (рис 1.7.), относящуюся к тому же классу – MIMD

Процессор

Процессор

КЭШ

КЭШ

Оперативная память

Рис. 1.7 Архитектура UMA

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

Четвертый класс в систематике Флинна, MISD (рис 1.8.) , не представляет практического интереса,по крайней мере для анализируемых нами компьютеров. В последнее время в литературе часто используется также термин SPMD (одна программа - множественные данные). Он относится не к архитектуре компьютеров, а к модели распараллеливания программ и не является расширением систематики Флинна. SPMD обычно относится к MPP (т.е. MIMD) - системам и означает, что несколько копий одной программы параллельно выполняются в разных процессорных узлах с разными данными. [7]

Процессор

Процессор

Процессор

Контроллер

Контроллер

Контроллер

Память

Рис. 1.8 Архитектура Multiple Instruction stream, Single Data stream

Интересно также упомянуть о принципиально ином направлении в развитии компьютерных архитектур - машинах потоков данных. В середине 80-х годов многие исследователи полагали, что будущее высокопроизводительных ЭВМ связано именно с компьютерами, управляемыми потоками данных, в отличие от всех рассмотренных нами классов вычислительных систем, управляемых потоками команд. В машинах потоков данных могут одновременно выполняться сразу много команд, для которых готовы операнды. Хотя ЭВМ с такой архитектурой сегодня промышленно не выпускаются, некоторые элементы этого подхода нашли свое отражение в современных суперскалярных микропроцессорах, имеющих много параллельно работающих функциональных устройств и буфер команд, ожидающих готовности операндов. В качестве примеров таких микропроцессоров можно привести HP РА-8000 и Intel Pentium Pro.

Соседние файлы в папке БЖД