Организация ЭВМ и систем
История появления параллелизма в архитектуре ЭВМ
Классы параллельных систем
CRAY Y-MP C90
Факторы снижающие производительность параллельных компьютеров
CRAY T3D
Технологии параллельного программирования
Оценки производительности суперЭВМ
Вопросы для самоконтроля
Вопросы для самоконтроля
143.00K
Категория: ЭлектроникаЭлектроника

Организация ЭВМ и систем. Параллельные системы. Многомашинные и многопроцессорные вычислительные системы. (Лекция 9)

1. Организация ЭВМ и систем

Лекция № 9
• Параллельные системы
• Понятие о многомашинных и
многопроцессорных вычислительных
системах
• Основные классы параллельных систем,
их характерные особенности

2. История появления параллелизма в архитектуре ЭВМ

• 1953г. – IBM 701
1955г. – IBM 704
-) параллельный формат данных
-) АЛУ с плавающей точкой
• 1958г. – IBM 709 (независимые контроллеры I/O)
• 1961г. – IBM STRETCH (опережающий просмотр,
расслоение памяти на 2 банка)
• 1963г. – ATLAS (реализована конвейерная обработка
данных)
• 1964г. – CDC 6600 (независимые устройства – несколько
конвейеров)
• 1969г. – CDC 7600 (8 конвейерных функциональных
устройств)
• 1974г. – ALLIAC (УУ + матрица из 64 процессоров)
• 1976г. – CRAY1 (векторно– конвейерные процессоры)

3.

Параллельная
обработка
данных,
имеет
две
разновидности:
• Конвейерность (выделение нескольких этапов при
выполнении операции).
• Параллельность (наличие нескольких функционально
независимых устройств).
Закон Амдала
1
S
f (1 f ) / p
где: S – ускорение, f – доля операций, которые нужно
выполнить последовательно, p – число процессоров.
Следствие из закона Амдала:
Для того, чтобы ускорить выполнение программы в q
раз, необходимо ускорить не менее чем в q раз, не менее
чем (1-1/q)-ую часть программы.

4. Классы параллельных систем

1.
Векторно-конвейерные компьютеры (PVP). Имеют
MIMD архитектуру (множество инструкций над
множеством данных). Характерным представителем
данного направления является семейство векторноконвейерных компьютеров CRAY.
Основные особенности:
Конвейерные функциональные устройства.
Набор векторных инструкций в системе команд.
Зацепление команд (используется как средство
ускорения вычисления).

5. CRAY Y-MP C90

16 МП, tтакта = 4,1нс, fт.ч.=250МГц.
Разделяемые ресурсы процессора:
ОП разделяется всеми МП и секцией ввода/вывода. ОП
разделена на множество банков, которые могут работать
одновременно.
Секция ввода/вывода:
Low-Speed Channels – 6Мбайт/с
High-Speed Channels – 200Мбайт/с
Very High-Speed Channels – 1800Мбайт/с
Секция межпроцессорного взаимодействия содержит регистры
и семафоры, предназначенные для передачи данных и
управляющей информации.
3.
Вычислительная секция процессора
Регистры (адресные, скалярные, векторные).
Функциональные устройства.
Сети коммуникаций.
4.
Секция управления.
Команды выбираются из ОП блоками и
заносятся в буфера команд.
5.
Параллельное выполнение программ.
1.
2.

6. Факторы снижающие производительность параллельных компьютеров

1.
2.
3.
4.
Закон Амдала.
Время инициализации и передачи сообщения по
сети.
Неравномерная загрузка всех процессорных
элементов.
Реальная производительность одного процессора.

7.

2.
Массивно-параллельные
компьютеры
с
распределенной памятью. К данному классу можно
отнести компьютеры Intel Paragon, IBM SP1, Parsytec,
IBM SP2 и CRAY T3D.
Особенности:
Объединяются
несколько
серийных
микропроцессоров, их число должно быть >= 128,
каждый со своей локальной памятью.

8. CRAY T3D

Cray T3D и T3E используют единое адресное
пространство
(общая
виртуальная
память).
По
аппаратному прерыванию особого случая адресации ОС
выполняет пересылку страницы с одного узла на другой.
У каждого МП своя локальная память, но единое
виртуальное адресное пространство.
Cray T3D (32-2048 МП)
хост-машина
Сеть межпроцессорного
взаимодействия
(коммуникационная сеть)
140Мбайт/с
Вычислительные узлы
2 ПЭ
МП
Локальная
Сетевой
интерфейс
Несколько
вспомогательных схем
Узлы ввода/вывода
Контроллер
блочных
передач

9.

Параллельные компьютеры с общей памятью. В
данное направление входят многие современные
многопроцессорные SMP-компьютеры или, например,
отдельные узлы компьютеров HP Exemplar и Sun
StarFire.
Особенности:
• Вся оперативная память разделяется между
несколькими одинаковыми процессорами.
• Число процессоров, имеющих доступ к общей памяти
нельзя сделать большим.
3.

10.

Кластерная архитектура. По такому принципу
построены CRAY SV1, HP Exemplar, Sun StarFire, NEC
SX-5, последние модели IBM SP2 и другие.
Особенности:
Представляет собой комбинации предыдущих трех. Из
нескольких
процессоров
(традиционных
или
векторно-конвейерных) и общей для них памяти
формируется вычислительный узел. Если полученной
вычислительной мощности не достаточно, то
объединяется несколько узлов высокоскоростными
каналами.
4.

11. Технологии параллельного программирования


Средства программирования: параллельные
расширения и диалекты языков – Fortran, C/C++, ADA и
др.
MPI – интерфейс передачи сообщений.
Особенности:
Поддерживает несколько режимов передачи данных.
Предусматривает гетерогенные вычисления.
Передача типизированных сообщений.
Построение библиотек – MPICH, LAM MPI.
Наличие вариантов для языков программирования
C/C++, Fortran.
Поддерживает коллективные операции:
широковещательную передачу, разборку/сборку,
операции редукции.
Совместимость с многопоточностью.

12. Оценки производительности суперЭВМ

Большинство
оценочных
характеристик
производительности суперЭВМ связано с вычислениями
над вещественными числами. К ним относится пиковая
производительность (ПП), измеряемая в млн. операций
с плавающей точкой, которые компьютер теоретически
может выполнить за 1 сек (MFLOPS).
ПП - величина, практически не достижимая. Это
связано с проблемами заполнения функциональных
конвейерных устройств. Чем больше конвейер, тем
больше надо "инициализационного" времени для того,
чтобы его заполнить. Такие конвейеры эффективны при
работе с длинными векторами. Поэтому для оценки
векторных суперЭВМ было введено такое понятие, как
длина полупроизводительности - длина вектора, при
которой
достигается
половина
пиковой
производительности.

13.

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

14.

Имеется несколько модификаций этих тестов. Обычно
фирмы-производители
компьютеров
приводят
результаты при N= 100.
Свободно распространяется стандартная программа
на
Фортране,
которую
надо
выполнить
на
суперкомпьютере,
чтобы
получить
результат
тестирования. Эта программа не может быть изменена,
за исключением замены вызовов подпрограмм, дающих
доступ к процессорному времени выполнения.
Другой стандартный тест относится к случаю N =
1000,
предполагающему
использование
длинных
векторов. Эти тесты могут выполняться на компьютерах
при разном числе процессоров, давая также оценки
качества распараллеливания.
Для MPP-систем более интересным является тест
Linpack-parallel,
в
котором
производительность
измеряется при больших N и числе процессоров.

15.

Здесь лидером является 6768-процессорный Intel
Paragon (281 GFLOPS при N = 128600). Что касается
производительности процессоров, то при N = 100
лидирует Cray T916 (522 MFLOPS), при N = 1000 и по
пиковой
производительности
Hitachi
S3800
(соответственно 6431 и 8000 MFLOPS). Для сравнения,
процессор в AlphaServer 8400 имеет 140 MFLOPS при N
=100 и 411 MFLOPS при N=1000.
Для высокопараллельных суперкомпьютеров в
последнее время все больше используются тесты NAS
parallel benchmark, которые особенно хороши для задач
вычислительной газо- и гидродинамики. Их недостатком
является фиксация алгоритма решения, а не текста
программы.

16. Вопросы для самоконтроля

1.
2.
3.
4.
5.
6.
Когда впервые реализована конвейерная обработка
данных?
Перечислите способы параллельной обработки
данных.
Сформулируйте следствие из закона Амдала.
Назовите классы параллельных систем.
Основные особенности векторно-конвейерных
компьютеров.
К какому классу параллельных систем относятся
компьютеры Intel Paragon и CRAY T3D?

17. Вопросы для самоконтроля

В каких классах параллельных систем оперативная
память разделяется между несколькими
процессорами?
8. Перечислите особенности MPI – интерфейса.
9. Что представляет собой тест оценки
производительности суперЭВМ Linpack?
10. Какие тесты оценки производительности суперЭВМ Вы
знаете?
7.
English     Русский Правила