Классификация многопроцессорных вычислительных систем Классификация многопроцессорных вычислительных систем




НазваниеКлассификация многопроцессорных вычислительных систем Классификация многопроцессорных вычислительных систем
Дата конвертации12.02.2013
Размер445 b.
ТипПрезентации



Классификация многопроцессорных вычислительных систем

  • Классификация многопроцессорных вычислительных систем

    • Мультипроцессоры – системы с общей памятью
    • Мультикомпьютеры – системы с распределенной памятью
  • Типовые схемы коммуникации процессоров

  • Системные платформы для построения кластеров

  • Заключение



Систематика Флинна (Flynn)

  • Систематика Флинна (Flynn)

    • Классификация по способам взаимодействия последовательностей (потоков) выполняемых команд и обрабатываемых данных:
      • SISD (Single Instruction, Single Data)
      • SIMD (Single Instruction, Multiple Data)
      • MISD (Multiple Instruction, Single Data)
      • MIMD (Multiple Instruction, Multiple Data)


Детализация систематики Флинна…

  • Детализация систематики Флинна…

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


Детализация систематики Флинна…

  • Детализация систематики Флинна…



Мультипроцессоры с использованием единой общей памяти (shared memory)…

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

    • Обеспечивается однородный доступ к памяти (uniform memory access or UMA),
    • Являются основой для построения:
      • векторных параллельных процессоров (parallel vector processor or PVP). Примеры: Cray T90,
      • симметричных мультипроцессоров (symmetric multiprocessor or SMP). Примеры: IBM eServer, Sun StarFire, HP Superdome, SGI Origin.


Мультипроцессоры с использованием единой общей памяти…

  • Мультипроцессоры с использованием единой общей памяти…



Мультипроцессоры с использованием единой общей памяти…

  • Мультипроцессоры с использованием единой общей памяти…

  • Проблемы:

      • Доступ с разных процессоров к общим данным и обеспечение, в этой связи, однозначности (когерентности) содержимого разных кэшей (cache coherence problem),
      • Необходимость синхронизации взаимодействия одновременно выполняемых потоков команд


Мультипроцессоры с использованием единой общей памяти…

  • Мультипроцессоры с использованием единой общей памяти…

  • Проблема: Обеспечение однозначности (когерентности) содержимого разных кэшей (cache coherence problem)



Мультипроцессоры с использованием единой общей памяти…

  • Мультипроцессоры с использованием единой общей памяти…

  • Проблема: Необходимость синхронизации взаимодействия одновременно выполняемых потоков команд…

  • Пример: Пусть процессоры выполняют последовательность команд

  • над общей переменной N (в скобках указывается значение этой переменной)

  • Вариант исполнения 1 Вариант исполнения 2



Мультипроцессоры с использованием единой общей памяти…

  • Мультипроцессоры с использованием единой общей памяти…

  • Проблема: Необходимость синхронизации взаимодействия одновременно выполняемых потоков команд…

  • Рассмотренный пример может рассматриваться как проявление общей проблемы использования разделяемых ресурсов (общих данных, файлов, устройств и т.п.)

  • Для организации разделения ресурсов между несколькими потоками команд необходимо иметь возможность:

  • определения доступности запрашиваемых ресурсов (ресурс свободен и может быть выделен для использования, ресурс уже занят одним из потоков и не может использоваться дополнительно каким-либо другим потоком);

  • - выделения свободного ресурса одному из процессов, запросивших ресурс для использования;

  • приостановки (блокировки) потоков, выдавших запросы на ресурсы, занятые другими потоками.



Мультипроцессоры с использованием единой общей памяти

  • Мультипроцессоры с использованием единой общей памяти

  • Проблема: Необходимость синхронизации взаимодействия одновременно выполняемых потоков команд

  • Доступ к общей переменной в рассмотренном примере в самом общем виде должен быть организован следующим образом:



Мультипроцессоры с использованием физически распределенной памяти (distributed shared memory or DSM):

  • Мультипроцессоры с использованием физически распределенной памяти (distributed shared memory or DSM):

    • Неоднородный доступ к памяти (non-uniform memory access or NUMA),
    • Среди систем такого типа выделяют:
      • cache-only memory architecture or COMA (системы KSR-1 и DDM),
      • cache-coherent NUMA or CC-NUMA (системы SGI Origin 2000, Sun HPC 10000, IBM/Sequent NUMA-Q 2000),
      • non-cache coherent NUMA or NCC-NUMA (система Cray T3E).


Мультипроцессоры с использованием физически распределенной памяти…

  • Мультипроцессоры с использованием физически распределенной памяти…



Мультипроцессоры с использованием физически распределенной памяти:

  • Мультипроцессоры с использованием физически распределенной памяти:

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


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

  • Мультикомпьютеры…

    • Не обеспечивают общий доступ ко всей имеющейся в системах памяти (no-remote memory access or NORMA),
    • Каждый процессор системы может использовать только свою локальную память


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

  • Мультикомпьютеры…

    • Для доступа к данным, располагаемых на других процессорах, необходимо явно выполнить операции передачи сообщений (message passing operations),
    • Основные операции передачи данных:
      • Отправить сообщение (send),
      • Получить сообщение (receive)
  • Пример:



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

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

  • Данный подход используется при построении двух важных типов многопроцессорных вычислительных систем:

    • массивно-параллельных систем (massively parallel processor or MPP), например: IBM RS/6000 SP2, Intel PARAGON, ASCI Red, транспьютерные системы Parsytec,
    • кластеров (clusters), например: AC3 Velocity и NCSA NT Supercluster.


Мультикомпьютеры. Кластеры…

  • Мультикомпьютеры. Кластеры…



Мультикомпьютеры. Кластеры…

  • Мультикомпьютеры. Кластеры…

  • Преимущества:

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


Мультикомпьютеры. Кластеры

  • Мультикомпьютеры. Кластеры

  • Недостатки:

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




Топология сети передачи данных…

  • Топология сети передачи данных…

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


Топология сети передачи данных…

  • Топология сети передачи данных…

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


Топология сети передачи данных…

  • Топология сети передачи данных…

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


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

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

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

  • Одновременность выполнения нескольких коммуникационных операций является ограниченной.



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

  • Характеристики топологии сети…

    • диаметр – максимальное расстояние между двумя процессорами сети; характеризует максимально-необходимое время для передачи данных между процессорами,
    • связность (connectivity) – минимальное количество дуг, которое надо удалить для разделения сети передачи данных на две несвязные области,
    • ширина бинарного деления (bisection width) – минимальное количество дуг, которое надо удалить для разделения сети передачи данных на две несвязные области одинакового размера,
    • стоимость – общее количество линий передачи данных в многопроцессорной вычислительной системе.


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

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



В качестве системной платформы для построения кластеров используют обе наиболее распространенные в настоящий момент операционные системы Unix/Linux и Microsoft Windows.

  • В качестве системной платформы для построения кластеров используют обе наиболее распространенные в настоящий момент операционные системы Unix/Linux и Microsoft Windows.

  • Далее подробно будет рассмотрено решение на основе ОС семейства Microsoft Windows; характеристика подхода на базе ОС Unix может быть получена, например, в

  • Sterling, T. (Ed.) Beowulf Cluster Computing with Linux. - Cambridge, MA: The MIT Press, 2002.



Microsoft Compute Cluster Server 2003…

  • Microsoft Compute Cluster Server 2003…

  • Интегрированная платформа для поддержки высокопроизводительных вычислений на кластерных системах

  • CCS 2003 состоит из операционной системы Microsoft Windows Server 2003 и Microsoft Compute Cluster Pack (CCP) – набора интерфейсов, утилит и инфраструктуры управления

  • Вместе с CCP поставляется SDK, содержащий необходимые инструменты разработки программ для CCS, включая собственную реализацию MPI (Microsoft MPI)



Microsoft Compute Cluster Server 2003…

  • Microsoft Compute Cluster Server 2003…

  • В качестве вычислительных узлов кластера могут быть использованы 64-битные процессоры семейства x86 с, как минимум, 512 Мб оперативной памяти и 4 Гб свободного дискового пространства

  • На вычислительных узлах кластера должна быть установлена операционная система Microsoft Windows Server 2003 (Standard, Enterprise или Compute Cluster Edition)



Microsoft Compute Cluster Server 2003

  • Microsoft Compute Cluster Server 2003

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

  • В состав CCP входит Microsoft MPI – версия реализации стандарта MPI 2 от Argonne National Labs. MS MPI совместима с MPICH 2 и поддерживает полнофункциональный API с более чем 160 функциями

  • Microsoft Visual Studio 2005 включает параллельный отладчик, работающий с MS MPI



Проведена дальнейшая детализация класса многопроцессорных вычислительных систем

  • Проведена дальнейшая детализация класса многопроцессорных вычислительных систем

  • Даны ключевые определения мультипроцессора и мультикомпьютера

  • Приведена общая характеристика проблем, возникающих при параллельных вычислениях для систем с общей памятью (обеспечение однозначности кэш-памяти разных процессоров, необходимость синхронизации вычислений)

  • Рассмотрена общая схема передачи сообщений для вычислительных систем с распределенной памятью

  • Рассмотрены основные характеристики сетей передачи данных в многопроцессорных вычислительных системах



В чем состоят положительные и отрицательные стороны кластерных систем ?

  • В чем состоят положительные и отрицательные стороны кластерных систем ?

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

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

  • В чем состоит общая схема передачи сообщений для вычислительных систем с распределенной памятью ?

  • В чем состоят особенности сетей передачи данных для кластеров ?

  • Каковы основные характеристики сетей передачи данных ?

  • Какие системные платформы могут быть использованы для построения кластеров ?



Рассмотрите способы обеспечения когерентности кэшей в системах с общей разделяемой памятью

  • Рассмотрите способы обеспечения когерентности кэшей в системах с общей разделяемой памятью

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

  • Рассмотрите топологию сети передачи данных в виде двоичного дерева

  • Выделите эффективно реализуемые классы задач для каждого типа топологий сети передачи данных



Гергель В.П. Теория и практика параллельных вычислений. - М.: Интернет-Университет, БИНОМ. Лаборатория знаний, 2007. – Лекция 1

  • Гергель В.П. Теория и практика параллельных вычислений. - М.: Интернет-Университет, БИНОМ. Лаборатория знаний, 2007. – Лекция 1

  • Дополнительная литература:

  • Воеводин В.В., Воеводин Вл.В. Параллельные вычисления. – СПб.: БХВ-Петербург, 2002.

  • Богданов А.В. и др. Архитектуры и топологии многопроцессорных вычислительных систем. М.: Интернет-Университет, 2004.

  • Таненбаум Э. Архитектура компьютера. – СПб.: Питер, 2002.

  • Дополнительные учебные курсы:

  • Богданов А.В. и др. Архитектуры и топологии многопроцессорных вычислительных систем. — http://www.intuit.ru/department/hardware/atmcs/

  • Барский А.Б. Архитектура параллельных вычислительных систем. — http://www.intuit.ru/department/hardware/paralltech/



Оценка эффективности параллельных вычислений

  • Оценка эффективности параллельных вычислений



Гергель В.П., профессор, д.т.н., декан факультета вычислительной математики и кибернетики

  • Гергель В.П., профессор, д.т.н., декан факультета вычислительной математики и кибернетики

  • Нижегородский университет

  • gergel@unn.ru

  • http://www.software.unn.ru/?dir=17



Похожие:

Классификация многопроцессорных вычислительных систем Классификация многопроцессорных вычислительных систем iconИзучение методов разработки параллельных программ для многопроцессорных вычислительных систем

Классификация многопроцессорных вычислительных систем Классификация многопроцессорных вычислительных систем iconИзучение методов разработки параллельных программ для многопроцессорных вычислительных систем

Классификация многопроцессорных вычислительных систем Классификация многопроцессорных вычислительных систем iconСессия Ученого совета офвэ 26 декабря 2007 года Деятельность отдела вычислительных систем (овс)
Деятельность отдела вычислительных систем (овс) в 2007 году и в ближайшем будущем
Классификация многопроцессорных вычислительных систем Классификация многопроцессорных вычислительных систем iconСессия Ученого совета офвэ 24 декабря 2008 года Деятельность отдела вычислительных систем (овс)
Деятельность отдела вычислительных систем (овс) в 2008 году и в ближайшем будущем
Классификация многопроцессорных вычислительных систем Классификация многопроцессорных вычислительных систем iconСессия Ученого совета офвэ 25-27 декабря 2006 года Деятельность отдела вычислительных систем (овс)
Деятельность отдела вычислительных систем (овс) в 2006 году и в ближайшем будущем
Классификация многопроцессорных вычислительных систем Классификация многопроцессорных вычислительных систем iconЗнакомство с факторами, затрудняющими использование многопроцессорных систем для решения вычислительно сложных задач

Классификация многопроцессорных вычислительных систем Классификация многопроцессорных вычислительных систем iconАрхитектурные особенности вычислительных систем различных классов
По мере развития компьютеры суще­ственно уменьшились в размерах, но обросли дополнительным оборудованием, необходимым для их эффективного...
Классификация многопроцессорных вычислительных систем Классификация многопроцессорных вычислительных систем iconКонсолидация вычислительных ресурсов в цоды. Консолидация вычислительных ресурсов в цоды
Модернизация объектной модели информационных систем в соответствии с изменяющимися бизнес-процессами компании
Классификация многопроцессорных вычислительных систем Классификация многопроцессорных вычислительных систем iconКлассификация автоматизированных систем и требования по защите информации в соответствии с Руководящими документами Гостехкомиссии России
Факт: 40% взломов систем в Internet выполняется через включенные межсетевые экраны
Классификация многопроцессорных вычислительных систем Классификация многопроцессорных вычислительных систем iconМатематическое и программное обеспечение оценки рисков использования информационно-вычислительных систем Кононов Александр Анатольевич, к т.
Математическое и программное обеспечение оценки рисков использования информационно-вычислительных систем Кононов Александр Анатольевич,...
Разместите кнопку на своём сайте:
dok.opredelim.com


База данных защищена авторским правом ©dok.opredelim.com 2015
обратиться к администрации
dok.opredelim.com
Главная страница