Структуры вычислительных систем
Структура вычислительных систем
Типичная структура вычислительной системы включает в себя три основных типа устройств:
Архитектура вычислительных систем
Архитектура вычислительных систем
4 основных архитектуры ВС
Single Instruction Single Data (SISD)
Single Instruction Multiple Data (SIMD)
Multiple Instruction Single Data (MISD)
Multiple Instruction Multiple Data (MIMD)
Мультипроцессоры
Мультипроцессоры
Мультикомпьютеры
Характеристика типовых схем коммуникации в многопроцессорных вычислительных системах
Примеры топологий сети передачи данных
Схемы коммуникации процессоров
Схемы коммуникации процессоров
Схемы коммуникации процессоров
Топология сети вычислительных кластеров
Характеристики топологии сети
788.72K
Категория: ЭлектроникаЭлектроника

доп 6 вар

1. Структуры вычислительных систем

СТРУКТУРЫ
ВЫЧИСЛИТЕЛЬНЫХ СИСТЕМ
Подготовил студент группы ПИ-21 Муллин Денис

2. Структура вычислительных систем

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

3. Типичная структура вычислительной системы включает в себя три основных типа устройств:


процессор;
память, включающую оперативную память и
постоянную память, которая служит для хранения
данных и программ;
устройства ввода/вывода –служащие для связи
микропроцессорной системы с внешними
устройствами, для приема (ввода, чтения, Read)
входных сигналов и выдачи (вывода, записи, Write)
выходных сигналов.
Все устройства вычислительной системы объединяются
общей системной шиной (она же называется еще
системной магистралью или каналом).
Структура вычислительной системы

4. Архитектура вычислительных систем

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

5. Архитектура вычислительных систем

Эта таксономия (классификация) архитектур
была предложена М. Флинном (М. Flynn) в
начале 60-х гг.
В ее основу заложено два возможных вида
параллелизма: независимость потоков
заданий (команд), существующих в системе, и
независимость (несвязанность) данных,
обрабатываемых в каждом потоке.
Майкл Флинн
Michael Flynn

6. 4 основных архитектуры ВС


одиночный поток команд — одиночный поток данных
(ОКОД), в английском варианте — Single Instruction
Single Data (SISD) — одиночный поток инструкций —
одиночный поток данных;
одиночный поток команд — множественный поток
данных (ОКМД), или Single Instruction Multiple Data
(SIMD) — одиночный поток инструкций — одиночный
поток данных;
множественный поток команд — одиночный поток
данных (МКОД), или Multiple Instruction Single Data
(MISD) — множественный поток инструкций —
одиночный поток данных;
множественный поток команд — множественный
поток данных (МКМД), или Multiple Instruction Multiple
Data (MIMD) — множественный поток инструкций —
множественный поток данных (MIMD).
Архитектура ВС:
а — ОКОД (SISD)-архитектура; б— ОКМД (SIМD)-архитектура; в —
МКОД (МISD)-архитектура; г — МКМД (МIMD)-архитектура

7. Single Instruction Single Data (SISD)

SISD охватывает все однопроцессорные и
одномашинные варианты систем, т.е. с одним
вычислителем. Все ЭВМ классической структуры
попадают в этот класс. Здесь параллелизм вычислений
обеспечивается путем совмещения выполнения
операций отдельными блоками АЛУ, а также
параллельной работы устройств ввода-вывода
информации и процессора. Закономерности
организации вычислительного процесса в этих
структурах достаточно хорошо изучены.

8. Single Instruction Multiple Data (SIMD)

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

9. Multiple Instruction Single Data (MISD)

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

10. Multiple Instruction Multiple Data (MIMD)

MIMD предполагает, что все процессоры системы
работают по своим программам с собственным
потоком команд. В простейшем случае они могут быть
автономны и независимы. Такая схема
использования ВС часто применяется на многих
крупных вычислительных центрах для увеличения
пропускной способности центра. Больший интерес
представляет возможность согласованной работы
ЭВМ (процессоров), когда каждый элемент делает
часть общей задачи. Общая теоретическая база
такого вида работ практически отсутствует. Но можно
привести примеры большой эффективности этой
модели вычислений. Подобные системы могут быть
многомашинными и многопроцессорными.
Например, отечественный проект машины
динамической архитектуры — ЕС-2704, ЕС-2127 —
позволял одновременно использовать сотни
процессоров.

11. Мультипроцессоры

Для дальнейшей систематики мультипроцессоров
учитывается способ построения общей памяти –
использование единой (централизованной) общей
памяти (shared memory).
Такой подход обеспечивает однородный доступ к памяти
(uniform memory access или UMA) и служит основой для
построения векторных параллельных процессоров
(parallel vector processor или PVP) и симметричных
мультипроцессоров (symmetric multiprocessor или SMP).
Архитектура многопроцессорных систем с общей (разделяемой) памятью:
системы с однородным (а) и неоднородным (б) доступом к памяти

12. Мультипроцессоры

Общий доступ к данным может быть обеспечен и при физически распределенной памяти (при этом,
естественно, длительность доступа уже не будет одинаковой для всех элементов памяти). Такой
подход именуется неоднородным доступом к памяти (non-uniform memory access или NUMA).
Среди систем с таким типом памяти выделяют:
системы, в которых для представления данных используется только локальная кэш-память
имеющихся процессоров (cache-only memory architecture или COMA); примерами являются
KSR-1 и DDM;
системы, в которых обеспечивается когерентность локальных кэшей разных процессоров
(cache-coherent NUMA или CC-NUMA); среди таких систем: SGI Origin 2000, Sun HPC 10000,
IBM/Sequent NUMA-Q 2000;
системы, в которых обеспечивается общий доступ к локальной памяти разных процессоров без
поддержки на аппаратном уровне когерентности кэша (non-cache coherent NUMA или NCCNUMA); например, система Cray T3E.

13. Мультикомпьютеры

Мультикомпьютеры (многопроцессорные системы с
распределенной памятью) уже не обеспечивают общего
доступа ко всей имеющейся в системах памяти (noremote memory access или NORMA).
При всей схожести подобной архитектуры с системами с
распределенной общей памятью, мультикомпьютеры
имеют принципиальное отличие: каждый процессор
системы может использовать только свою локальную
память, в то время как для доступа к данным,
располагаемым на других процессорах, необходимо явно
выполнить операции передачи сообщений (message
passing operations). Данный подход применяется при
построении двух важных типов многопроцессорных
вычислительных систем - массивно-параллельных систем
( massively parallel processor или MPP ) и кластеров
(clusters).
Архитектура многопроцессорных систем с распределенной
памятью

14. Характеристика типовых схем коммуникации в многопроцессорных вычислительных системах

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

15. Примеры топологий сети передачи данных

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

16. Схемы коммуникации процессоров

полный граф (completely-connected graph или
clique) – система, в которой между любой
парой процессоров существует прямая линия
связи.
линейка (linear array или farm) – система, в
которой все процессоры перенумерованы по
порядку и каждый процессор, кроме первого и
последнего, имеет линии связи только с двумя
соседними (с предыдущим и последующим)
процессорами.

17. Схемы коммуникации процессоров

кольцо (ring) – данная топология получается из
линейки процессоров соединением первого и
последнего процессоров линейки.
звезда (star) – система, в которой все
процессоры имеют линии связи с некоторым
управляющим процессором.

18. Схемы коммуникации процессоров

решетка (mesh) – система, в которой граф
линий связи образует прямоугольную сетку
(обычно двух- или трехмерную).
гиперкуб (hypercube) – данная топология
представляет собой частный случай структуры
решетки, когда по каждой размерности сетки
имеется только
два процессора (т.е. гиперкуб
N
содержит 2 процессоров при размерности N).

19. Топология сети вычислительных кластеров

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

20. Характеристики топологии сети

В качестве основных характеристик топологии сети передачи данных наиболее широко используется
следующий ряд показателей:
диаметр – показатель, определяемый как максимальное расстояние между двумя процессорами
сети (под расстоянием обычно понимается величина кратчайшего пути между процессорами). Эта
величина может характеризовать максимально необходимое время для передачи данных между
процессорами, поскольку время передачи обычно прямо пропорционально длине пути;
связность ( connectivity ) – показатель, характеризующий наличие разных маршрутов передачи
данных между процессорами сети. Конкретный вид данного показателя может быть определен,
например, как минимальное количество дуг, которое надо удалить для разделения сети передачи
данных на две несвязные области;
ширина бинарного деления ( bisection width ) – показатель, определяемый как минимальное
количество дуг, которое надо удалить для разделения сети передачи данных на две несвязные
области одинакового размера;
стоимость – показатель, который может быть определен, например, как общее количество линий
передачи данных в многопроцессорной вычислительной системе.
English     Русский Правила