
- •1.1. Развитие элементной базы вс.
- •1.2. Перспективы развития архитектур класса mpp (Massively Parallel Processor).
- •С хематический вид архитектуры с раздельной памятью
- •Линейная сеть процессоров
- •Повышение эффективности решения задач на линейной сети процессоров
- •Вычисление параллельного префикса
- •Использование гиперкуба для реализации параллельных алгоритмов.
- •Решение задачи быстрой сортировки на гиперкубе
- •2.1. Матричные вс с ассоциативной обработкой инф-ции на примере вс pepe.
- •2.2 Супер-эвм фирмы Cray Research.
- •1. Три типа различных регистров:
- •2. Параллельная обработка на нескольких уровнях.
- •3. Организация памяти.
- •2.3 Понятие метакомпьютинга. Способы организации метакомпьютера. Основные решаемые задачи. Примеры использования метакомпьютера для решения сложных задач.
- •3.1Транспьютеры. Практическое применение
- •3.2 Способы распределения задач по процессорам в мультипроцессорных вс.
- •3.3 Реализация фундаментальных вычислительных алгоритмов в линейной сети процессоров.
- •Линейная сеть процессоров
- •Повышение эффективности решения задач на линейной сети процессоров
- •Вычисление параллельного префикса
- •4.1 Вс на основе систолических и волновых матриц
- •Волновая матрица.
- •4.2 Возм-ые пути постр-ия высокопроизв-ых вс, отличных от фоннеймановского типа. Понятие семантического разрыва между стр-рой вс и реал-ой прогр-ой.
- •Концепция неограниченного параллелизма. Выявление микро- и макропараллелизма в алгоритмах.
- •5.1 Анализ производ-ти мультипроцессорных вс. Коэффициент ускорения вычислений. Проблемы достижимости линейного роста производительности.
- •5.2 Редукционная машина «Алиса». Пример выполнения фрагмента программы.
- •Параллельная редукция
- •6.1 Развитие новых методов вычислений Японская программа по развитию вычислительной техники:
- •Основной язык: Prolog
- •6.2 Показатели качества функционирования вс. Критерий Гроша. Критерий Минского. Двухпараметрический критерий. Проблемы достижения линейного роста производительности вс.
- •7.1 Достоинства и недостатки видов соединений вычислительных модулей в высокопроизводительных вс. Шина. Кольцо.
- •Линейная сеть процессоров
- •Повышение эффективности решения задач на линейной сети процессоров
- •7.3 Перспективы развития vpp (Vector Parallel Processor)
- •8.1 Достоинства и недостатки видов соединений вычислительных модулей в высокопроизводительных вс. Шина. Кольцо.
- •Одномерный путь передачи информации (отсутствует параллелизм передачи информации).
- •8.2 Особенности перехода к параллельным вычислениям. Проблемы организации параллельных вычислений.
- •9.1 Сравнительный анализ режимов и алгоритмов обработки информации в вс Сравнительные возможности двух методов организации параллельных вычислений: метод конвейеризации и метод параллелизма.
- •9.2 Принцип вычислений на основе управления потоком данных. Машины потоков данных (мпд). Архитектура. Достоинства и недостатки мпд.
- •Структура машины потоков данных. Данные хранятся в пакетах данных – в активных ячейках памяти. Ба – блок арифметический. Бл – блок логический. В активной памяти находятся пакеты, готовые к выполнению.
- •Функционирование машин потоков данных.
- •Организация сети передачи пакетов в мпд.
- •Достоинства мпд.
- •Недостатки мпд.
- •Обработка структур в мпд.
- •Структура мпд для обработки структур.
- •Структура устройства хранения и обработки.
- •9.3 Реализация фундаментальных вычислительных алгоритмов в матричной сети процессоров.
- •Решение задач линейной алгебры на матричной сети процессоров
- •10.1 Достоинства и недостатки видов соединений вычислительных модулей в высокопроизводительных вс. Шина. Кольцо.
- •Одномерный путь передачи информации (отсутствует параллелизм передачи информации).
- •10.2 Принцип вычислений на основе управления потоком данных. Машины потоков данных (мпд). Архитектура. Достоинства и недостатки мпд.
- •Данные хранятся в пакетах данных – в активных ячейках памяти. В активной памяти находятся пакеты, готовые к выполнению.
- •10.3 Принцип «разделяй и властвуй» и его использование для повышения эффективности выполнения вычислительных алгоритмов в сетях процессоров
- •11.1 Абстрактная архитектура вс. Основные модули и интерфейсы
- •Арифметический и командный конвейер
- •11.2 Особенности перехода к параллельным вычислениям. Проблемы организации параллельных вычислений.
- •11.3 Современные тесты для оценки производительности вс.
- •12.1 Диаграмма выполнения команды в машине фон Неймана. «Узкие места» при выполнении команды в последовательной вс. Методы устранения «узких» мест.
- •12.2 Редукционная g-машина. Пример выполнения фрагмента программы.
- •1. Три типа различных регистров:
- •2. Параллельная обработка на нескольких уровнях.
- •3. Организация памяти.
- •13.1 Арифметический и командный конвейер.
- •13.2 Организация тэговой памяти и оценка ее эффективности на примере мультипроцессорной вс Эльбрус.
- •Независимость программных средств от обрабатываемых данных. Программные средства реализованы только на логический уровень, поэтому:
- •Разработка высокопроизводительных систем класса мпд на основе ассоциативной памяти.
- •14.1. Способы выбора количества уровней совмещения (ступеней) в командном конвейере.
- •Тип решаемой задачи.
- •Стоимость организации вычислений.
- •14.2 Кластерные проекты (на примере мвс-1000 м). Коммуникационные технологии построения кластеров. Beowulf- кластеры. Beowulf- кластеры. The-hive.
- •14.3Теоретические модели параллельных систем. Ячеечные автоматы Неймана. Пространственная машина Унгера.
- •15.1 Достижения и перспективы развития вычислительной техники.
- •Японская программа по развитию вычислительной техники:
- •Задачи:
- •Существуют трансляторы с полуестетвенных языков
- •15.2 Способы распределения задач по процессорам в мультипроцессорных вс.
- •Организация супер-эвм с общей памятью (на примере hp Superdone). Архитектура ccNuma.
- •16.1 Классификационные схемы архитектур вс (по Флинну, по Энслоу). Достоинства и недостатки каждой из классификаций.
- •Многовходовые
- •Несимметричные(системы с неоднородными процессорами)
- •5.Вс с матричными (векторными) процессорами (Архитектура мрр)
- •16.2 Теоретические модели параллельных систем. Ячеечные автоматы Неймана. Пространственная машина Унгера
- •16.3Организация супер-эвм с общей памятью (на примере hp Superdone). Архитектура ccNuma.
- •17.1Достоинства и недостатки видов соединений вычислительных модулей в высокопроизводительных вс. Шина. Кольцо.
- •Одномерный путь передачи информации (отсутствует параллелизм передачи информации).
- •17.2 Вычислительные системы с векторной обработкой команд (структура). Диаграмма выполнения операций с векторной обработкой команд.
- •Вычисление параллельного префикса
- •63 Гусеничный алгоритм обработки элементов массива. Повышение эффективности решения задач на линейной сети процессоров
- •Вычисление параллельного префикса
- •65 Реализация фундаментальных вычислительных алгоритмов в матричной сети процессоров.
- •Решение задач линейной алгебры на матричной сети процессоров
- •Японская программа по развитию вычислительной техники:
- •Задачи:
- •Существуют трансляторы с полуестетвенных языков
- •2 Пути развития вычислительных систем (вс). Пять японских программ о развитии и внедрении средств вычислительной техники.
- •Использование гиперкуба для реализации параллельных алгоритмов.
- •Решение задачи быстрой сортировки на гиперкубе
- •Использование комбинаторов в редукционном вычислении
- •Процесс вычисления комбинаторного выражения
- •Реализация фундаментальных вычислительных алгоритмов в линейной сети процессоров.
- •Линейная сеть процессоров
- •Повышение эффективности решения задач на линейной сети процессоров
- •Вычисление параллельного префикса
- •20.1 Эволюция развития архитектур вс
- •20.2 Принципы векторизации последовательных программ. Критерии оценки векторной архитектуры.
- •2) Стартовое время конвейера.
- •Гусеничный алгоритм обработки элементов массива. Повышение эффективности решения задач на линейной сети процессоров
- •Вычисление параллельного префикса
- •Достоинства и недостатки видов соединений вычислительных модулей в высокопроизводительных вс. Шина. Кольцо.
- •Одномерный путь передачи информации (отсутствует параллелизм передачи информации).
- •21.2 Теоретические модели параллельных систем. Машина Холланда.
- •Решение задач линейной алгебры на систолических массивах.
- •22.2 Реализация принципа «сверхмультиобработки». Статический и динамический способ создания «общего кода».
- •22.3 СуперЭвм фирмы Fujitsu.
- •23.1 Сравнительные возможности двух методов организации параллельных вычислений: метод конвейеризации и метод параллелизма.
- •Факторы, влияющие на снижение производительности в системах с векторной обработкой команд
- •5. Зависимость по управлению
- •Основные технологии параллельного программирования.
- •62 Реализация фундаментальных вычислительных алгоритмов в линейной сети процессоров.
- •Линейная сеть процессоров
- •Повышение эффективности решения задач на линейной сети процессоров
- •Вычисление параллельного префикса
- •Вычислительные системы с векторной обработкой команд (структура). Диаграмма выполнения операций с векторной обработкой команд.
Японская программа по развитию вычислительной техники:
1. (начало 70-х) направленная на то, что бы внедрить средства ВТ в как можно большее число заведений, особенно учебных. Стоимость одного часа машинного времени должна быть в 100-1000 раз меньше, чем в США. Следовательно: - можно больше времени уделять изучению ВТ; - повышать уровень подготовки специалистов – главная цель;
2. (конец 70-х) Создание СуперЭВМ, которые будут совместимы с аналогичными СуперЭВМ Европы и США. FACOM-VP 100 (Fujitsu) и Hitac, S.810 (Hitachi) совместимы с ICL (Англия) и IBM (США) (меньшие мощности, чем аналогичные образцы Запада). Сейчас, по тестированию TOP 500 первые 20 мест занимают японские машины.
Цель: использовать те алгоритмы, ПО, которые уже накоплены, т.е. воспользоваться опытом других стран и на этой основе создавать более мощные программы.
(начало 80-х) Создание японской СуперЭВМ в 100 раз большей производительности, чем аналогичные образцы Европы и США (более дешевы, чем аналогичные образцы Европы и США). Цель: завоевать рынок в области создания и использования ЭВМ
Создание ЭВМ 5-го поколения для решения задач, связанных с нечисловой обработкой информации (данные не в числовых функциях, а в символах, нечетких изображениях)
Отличие: машина должна сама найти алгоритм решения, составить программу и в соответствующей форме выдать результат. Основной язык: Prolog. Эта программа не была доведена до конца. Препятствие: необходимость создания огромной базы знаний, которая являлась бы основой для таких систем. Переориентация на создание интеллектуальных систем принятия решений в различных ситуациях.
(начало 90-х) RWCP (Real World Computer Program) Всемирная программа, связанная с разработкой высоких алгоритмов (простота, скорость, расходы памяти), т.е. эти алгоритмы должны быть не избыточными и обладал высокой скоростью.
Задачи:
Распознавание образцов (ситуаций, проблем и т.д.)
Обработка семантической информации, связанная с реализацией трансляторов с естественного языков. Приближает ВТ к человеку: не нужно перелагать язык специалиста на язык машины (не нужен промежуточный человек)
Существуют трансляторы с полуестетвенных языков
Управление роботами в любой среде (воде, воздухе и т.д. )
Задачи управления различными обменами, процессами и т.д.
Эти задачи выдвинуты в международном плане. Япония является координатором в этой области.
Машина 5-го поколения должна быть машина искуственного интелекта:
База
знаний
Вычислительная система 5-го поколения
Внутренний формат
Преобразователь
данных
Естественный
язык (Пролог)
Генератор
программ
Язык Результат
Результат
Машина
4-го поколения
15.2 Способы распределения задач по процессорам в мультипроцессорных вс.
Процессоры в мультипроцессорной системе – однородные, то есть могут решать любые задачи из входного потока задач.
Процессоры в мультипроцессорной системе являются – специализированными (решают определенный тип задач)
Пусть имеется n процессоров и m задач. Необходимо так распределить m задач по n процессорам, чтобы общее время решения всех задач было минимальным. Наиболее известные алгоритмы такой задачи исходят из матричного программирования, в частности линейного программирования. Обозначим xij ситуацию, когда i-я задача решается на j-ом процессоре
Если xij = 1, то задача i решается на процессоре j. Если xij = 0, то иначе. П xij = 0 (1), где i = 1…n (так как задача решается на одном процессоре). xij = 1 (2). tij – время решения i-ой задачи на j – ом процессоре. xij tij = min (*)
Решить задачу, значит установить значения индексов i и j . Минимизировать (*). С учетом (1) и (2) составляется система из m линейных уравнений, решив которую найдем значение xij , при которых достигается min значения. Найдем, на каком процессоре какую задачу лучше выполнять.
П олучили распространение: Метод Шварца, метод Перт.
Метод Шварца, метод Перт.
Относятся к субоптимальным методам, при решении вводится гипотеза:
Минимизация решения на каждом из этапов (временных отрезков) приводит к минимизации всего решения в целом (оптимизация по шагам). К субоптимальным относится и метод динамического программирования.
Алгоритм распределения задач по методу Перт.
1. Процесс получения решения должен быть представлен в виде сетевого графика. 2. Сетевой график, или сеть, являются обобщением графа программы. 3. Граф представляется упорядоченной парой G = <E,D>. E – множество вершин графа. D – множество дуг, соединяющих вершины графа.
E
= {1,2,3,4,5}
D
= {1-1,1-2,1-3,1-4,3-2,3-5,4-5}
Д
ля
сети вводится понятие кортеж
(включает
большее число элементов чем пара)
S
= <e
0,
e
t,
E,
D,
A,
F>
e 0 – начальная вершина сети
e
t
–
конечная вершина сети (терминальная)
E – множество элементов
D
– множество дуг, соединяющих вершины
A – множество весов, то есть каждая дуга должна быть “взвешена”. Это время, или количество операций, или объем памяти для записи передаваемой информации
F – функция, которая отображает веса на соответствующие дуги, то есть ставит определенный вес каждой дуге на графе вычислительного процесса.
F: A -> D
Пример:
e
2
e
5
E
1
4
2
D
= {1-2,1-3,1-4,2-5,3-5,4-5,5-6}
F
3
3
С
еть
– ориентированный граф с исключением
петель, отсутствуют обратные связи, так
как процесс реализуется во времени.
Задача: определить путь из вершины 1 в
вершину 6 такой, чтобы сумма всех весов,
соответствующих этому пути была
минимальной. Найти последовательность
выполнения вершин графа: t
-> min
Какие ветки должны будут выполняться параллельно, чтобы t -> min (если все вершины были выполнены). Для реализации метода Перт вводятся понятия: самое раннее и самое позднее наступление события. t_(5) = t_2+t2-5 = 7 – критический путь. t_(5) = t_1+t1-2 . t_(5) = 6. t_(5)= 5
Для учета всех возможных вариантов реализации вычислительного процесса необходимо учесть наименьший путь выполнения процесса, то есть критический, наихудший путь. С учетом этого: Анализ сетевого графика необходимо начинать с конца, чтобы учесть критический путь. Начиная с терминальной вершины, выбираем вершину, которая является наихудшей и так далее для остальных вершин. При анализе двигаемся от терминальной вершины к начальной с определением наиболее эффективного пути.
П
ример:
Распределение
задач в мультипроцессорной системе,
состоящей из двух процессоров, на которых
выполняются задачи определенного типа
(специализированные). Исходные данные:
сетевой граф с указанием последовательности
выполнения работ и времени выполнения
на каждом из процессоров.
I
0-1
1-4
6
II
I
3-4
2-4
1
5
4-5
II
I
1
5
II
5
2
3
3-5
II
I
1-2
4
II
2-3
1 |
Анализ начинаем с конца: анализируем вершину №5. Для этого определяем фронт работ (дуг графа), которые своими дугами заходят в вершину 5 4-5, 3-5 t4-5(5) = t(4)+5 = 16 t3-5(5) = 9+3 = 12 (выбираем max время) |
1 шаг: I 4-5 II 0 = 5 (длительность выполнения работы) |
2 |
Рассматриваем результаты, которые остались незавершенными на предыдущем шаге + работы, которые своими дугами заходят в вершину, для которой работа исходящей вершины завершена Для 4-ой: 1-4, 2-4, 3-4 будут рассмотрены только тогда, когда завершится 4-5. Входящие работы рассматриваются только тогда, когда выполнены исходящие работы 3-5, 1-4, 2-4, 3 – 4 |
2 шаг: I 2-4 II 3-4 = 2 |
3 |
3-5, 2-4, 1-4 |
3 шаг: I 2-4 II 0 = 3 |
4 |
3-5, 1-4 |
4 шаг: I 3-5 II 0 = 3 |
5 |
1-4, 2-3 |
5 шаг: I 1-4 II 2-3 = 4 |
6 |
1-2, 0-2, 1-4 |
6 шаг: I 1-4 II 0-2 = 2 |
7 |
1-2, 0-2 |
7 шаг: I 0 II 0-2 = 3 |
8 |
1-2 |
8 шаг: I 0 II 1-2 = 1 |
9 |
|
9 шаг: I 0-1 II 0 = 1 |
Анализируем и определяем момент, когда можно совмещать отдельные работы, причем рассматриваем наихудший (критический) путь
15.3