
- •1. Понятие параллелизма. Пространственный и временной параллелизм.
- •2. Ярусно-параллельная форма представления алгоритма.
- •3. Автоматическое обнаружение параллелизма. Явная и скрытая параллельная обработка.
- •4.Степень параллелизма. Профиль параллелизма.
- •17.Способы организации свв. Свв для систем с распределенной оперативной памятью. Распределенная свв. Подключение спецпроцессора через свв.
- •5.Алгоритмические уровни параллелизма. Схемные уровни параллелизма.
- •6.Виды параллелизма. Естественный параллелизм и параллелизм множества объектов.
- •7. Виды параллелизма. Параллелизм независимых ветвей. Отличие параллелизма независимых ветвей от естественного параллелизма и параллелизма независимых ветвей от параллелизма множества объектов.
- •8.Виды параллелизма. Параллелизм смежных операций.
- •9. Модель задачи.
- •10. Уровни комплексирования устройств в вычислительных системах.
- •12. Структура и функция свв
- •13. Способы подключения свв к процессору.
- •14.Понятие модуля ввода-вывода. Функции мвв. Классификация мвв.
- •15.Способы организации свв. Свв для систем с общей оперативной памятью. Свв в виде специальной управляющей эвм.
- •16.Способ организации свв. Свв через внешние запоминающие устройства. Свв через «интерфейсную» эвм.
- •18. Сравнение архитектур cisc и risc.
- •19.Особенности risc-архитектуры.
- •20.Регистры в risc-процессорах.
- •21.Микропроцессор r10000.
- •22.Вычислительные системы класса мкмд. Многомашинные вычислительные комплексы.
- •23. Вычислительные системы класса мкмд. Многопроцессорные вычислительные комплексы и системы. Каноническая структура мультипроцессора.
- •24.Проблемы повышения производительности мпвк. Типы структурного построения мпвк.
- •25.Классификация мкмд-систем. Вычислительные системы с общей памятью: архитектура uma.
- •26.Классификация мкмд-систем. Вычислительные системы с общей памятью: архитектуры numa и coma.
- •27.Классификация мкмд-систем. Вычислительные системы с распределенной памятью.
26.Классификация мкмд-систем. Вычислительные системы с общей памятью: архитектуры numa и coma.
Для большей масштабируемости мультипроцессоров приспособлена архитектура с неоднородным доступом к памяти NUMA (NonUniform Memory Access). Как и мультипроцессоры UMA, они обеспечивают единое адресное пространство для всех процессоров, но, в отличие от машин UMA, доступ к локальным модулям памяти происходит быстрее, чем к удаленным.
В рамках концепции NUMA реализуется подходы, обозначаемые аббревиатурами NC-NUMA и CC-NUMA.
Если время доступа к удаленной памяти не скрыто (т.к. кэш-память отсут-ствует), то такая система называется NC-NUMA (NUMA без кэширования) (рис. 5.13).
Согласно технологии CC-NUMA, каждый узел в системе владеет собственной основной памятью, но с точки зрения процессоров имеет место глобальная адресуе¬мая память, где каждая ячейка любой локальной основной памяти имеет уникаль¬ный системный адрес. Когда процессор инициирует доступ к памяти и нужная ячейка отсутствует в его локальной кэш-памяти, кэш-память второго уровня (L2) процессора организует операцию выборки. Если нужная ячейка находится в ло¬кальной основной памяти, выборка производится с использованием локальной шины. Если же требуемая ячейка хранится в удаленной секции глобальной памя¬ти, то автоматически формируется запрос, посылаемый по сети соединений на нуж-ную локальную шину и уже по ней к подключенному к данной локальной шине кэшу. Все эти действия выполняются автоматически, прозрачны для процессора и его кэш-памяти.
Способы обеспечения совместимости кэшей: 1. Отслеживание системной шины (низкая масштабируемость, простота технической реализации).
2. Использование каталога (хранение БД кэш-строк в высокоскоростном специализированном аппаратном обеспечении).
Машины NUMA имеют один большой недостаток: обращения к удаленной памяти происходят гораздо медленнее, чем обращения к локальной памяти. Было предложено использовать основную память процессора как кэш-память – архитектура COMA (Cache Only Memory Access).
Особенности архитектуры COMA:
1. Локальная память каждого процессора рассматривается как кэш для доступа «своего» процессора.
2. Кэши всех процессоров рассматриваются как глобальная память системы, а сама глобальная память отсутствует.
3. Данные не привязаны к конкретному модулю памяти и не имеют уни-кального адреса, остающегося неизменным в течение всего времени существования переменной.
4. Данные переносятся в кэш-память того процессора, который последним их запросил. Перенос данных из одного локального кэша в другой не требует участия в этом процессе операционной системы, но подразумевает сложную и дорогостоящую аппаратуру управления памятью.
27.Классификация мкмд-систем. Вычислительные системы с распределенной памятью.
В системах с распределенной памятью или слабо связанных многопроцессорных системах вся память распределена между процессорными эле¬ментами, и каждый блок памяти доступен только «своему» процессору. Сеть со¬единений связывает процессорные элементы друг с другом. Данные системы принято называть мультикомпьютерами. Представителями этой группы являются системы с массовым параллелизмом (МРР, Massively Parallel Processing) и кластерные вычислительные системы (COW). Различие между общей и распределенной памятью - это разница в структуре виртуальной памяти, то есть в том, как память выгладит со стороны процессора. Физически почти каждая система памяти разделена на автономные компоненты, доступ к которым может производиться независимо. Общую память от распределенной отличает то, каким образом подсистема памяти интерпретирует поступивший от процессора адрес ячейки.
Практически все исследования в области архитектур с параллельной обработкой направлены на создание гибридных форм, которые сочетают в себе преимущества обеих архитектур. Здесь важно получить такую систему, которая расширяема, то есть которая будет продолжать исправно работать при добавлении все новых и новых процессоров.
МРР-системы обладают следующими характеристиками:
- стандартные микропроцессоры;
- физически распределенная память;
- сеть соединений с высокой пропускной способностью и малыми задерж-ками;
- хорошая масштабируемость (до тысяч процессоров);
- асинхронная МКМД-система с пересылкой сообщений;
- программа представляет собой множество процессов, имеющих отдельные адресные пространства;
- огромная производительность СВВ;
- отказоустойчивость.
В таких системах необходимо решить целый ряд проблем, связанных с описанием и программированием коммутаций процессов и управления ими. Математическая база этой науки в настоящее время практически отсутствует.
На рис. 5.15. представлена структура машины Cray T3E, которая относится к классу MPP-систем.
Одно из самых современных направлений в области создания вычислительных систем – это кластеризация. По производительности и коэффициенту готовности кластеризация представляет собой альтернативу симметричным мультипроцессорным системам.
Кластер - это группа взаимно соединенных вычислительных систем (узлов), работающих совместно, составляя единый вычислительный ресурс и создавая иллюзию наличия единственной ВМ. Важно лишь то, что каждый узел в состоянии функционировать самостоятельно и отдельно от кластера. В плане архитектуры суть кластерных вычислений сводится к объединению нескольких узлов высокоскоростной сетью. Для описания такого подхода, помимо термина «кластерные вычисления», достаточно часто применяют такие названия, как: кластер рабочих станций, гипервычисления, параллельные вычисления на базе сети, ультравычисления .
Изначально перед кластерами ставились две задачи: достичь большой вычислительной мощности и обеспечить повышенную надежность ВС. В качестве узлов кластеров могут использоваться как одинаковые ВС (гомо-генные кластеры), так и разные (гетерогенные кластеры).
Целями построения кластеров могут служить:
1) улучшение масштабируемости (способность к наращиванию мощности);
2) повышение надежности и готовности системы в целом;
3) увеличение суммарной производительности;
4) эффективное перераспределение нагрузок между компьютерами кластера;
5) эффективное управление и контроль работой системы и т.п.
Классификация кластеров достаточно большая и не входит в рассмотрение в данной дисциплине.