Россия, Москва |
Опубликован: 22.12.2006 | Уровень: специалист | Доступ: платный | ВУЗ: Московский государственный университет путей сообщения
Излагаются основные структурные решения, воплощённые в параллельных вычислительных системах и способствующие их высокой производительности. Изучаются основные популярные архитектуры. Исследуются принципы оптимизации выполнения параллельных программ.
Производится классификация параллельных вычислительных систем и способов распараллеливания. Приводятся «исторические» примеры параллельных ВС.
Изучается проблема распараллеливания на уровне исполнительных устройств. Рассматривается организация конвейеров операций, векторных конвейеров, выполнения операций на стеке. Исследуются принципы динамического распараллеливания в многофункциональном арифметическо-логическом устройстве.
Изучаются принципы «статического» составления потактового расписания работы процессора, управляемого в каждом такте. Такая компоновка командных слов характерна для суперскалеров VLIW- и EPIC-архитектуры. Освещается проблема организации интенсивного ветвления вычислений с помощью команды выполнения логического оператора и механизма предикатов, без традиционного использования команд условного перехода. Иллюстрируется возможность эффективного программирования конкретных задач.
Рассматриваются некоторые «нетрадиционные» архитектуры, отражающие альтернативный поиск и эффективные решения при создании современных архитектур многопроцессорных вычислительных систем.
Рассматривается проблема использования языка высокого уровня в качестве ассемблера - единственно доступного языка пользователя, включающего сложные алгоритмические конструкции. Аппаратная поддержка такого языка выполнена в отечественном семействе «Эльбрус».
Обсуждается проблема практического применения принципа data flow при построении асинхронных вычислительных систем. Приводятся примеры программирования.
Рассматривается архитектура вычислительной системы, основанная на принципе SPMD - «одна программа – много потоков данных». Анализируется возможность применения SPMD-технологии к решению задач логического вывода. Рассматривается проблема когерентности кэш-памяти в многопроцессорной системе.
План занятий
Занятие | Заголовок << | Дата изучения |
---|---|---|
- | ||
Введение26 минут | ВведениеОглавление | - |
Лекция 157 минут | Параллельные структуры вычислительных систем
Лекция посвящена начальному знакомству с основными структурными
решениями, воплощенными в параллельных вычислительных системах. Производится их
классификация. Приводятся "исторические" примеры параллельных ВС.
Оглавление | - |
Тест 118 минут | - | |
Лекция 251 минута | Микропроцессорные системы и способы распараллеливания
Лекция посвящена проблемам комплексирования микропроцессоров в
вычислительной системе. Рассматриваются транспьютерные технологии и
способы межпроцессорного обмена данными. Обсуждается идея применения
микропроцессорной ВС как внешнего устройства персонального компьютера или
рабочей станции. Исследуется вопрос объединения вычислительного ресурса
многопроцессорной системы в единое решающее поле для его оптимизированного
совместного использования. Производится классификация способов
распараллеливания.
Оглавление | - |
Тест 218 минут | - | |
Лекция 340 минут | Распараллеливание в ВС на уровне исполнительных устройств
Изучается проблема второго уровня распараллеливания — уровня
исполнительных устройств. Рассматривается организация конвейеров операций,
векторных конвейеров, выполнения операций на стеке. Исследуются принципы
динамического распараллеливания в многофункциональном
арифметическо-логическом устройстве.
Оглавление | - |
Тест 312 минут | - | |
Лекция 451 минута | Параллельная обработка стека и статическое распараллеливание в решающем поле
Рассматривается проблема параллельного выполнения программы,
которая представлена в безадресной системе команд, имитирующей выполнение операций
на стеке. Параллельная обработка стека применима к программам счёта
арифметических операторов, содержащих условия. Это позволяет значительно
сократить количество условных переходов.
Оглавление | - |
Тест 418 минут | - | |
Лекция 545 минут | Аппаратная поддержка языка пользователя — основная концепция мультипроцессорных систем
Рассматривается проблема использования языка высокого уровня в
качестве ассемблера — единственно доступного языка пользователя,
включающего сложные алгоритмические конструкции. Их применение эффективно
лишь при наличии средств аппаратной поддержки. Такая поддержка выполнена в
отечественном семействе "Эльбрус".
Оглавление | - |
Тест 518 минут | - | |
Лекция 61 час 27 минут | Оптимальное потактовое расписание выполнения работ в многофункциональном арифметическо-логическом устройстве
Рассматривается проблема составления потактового расписания работы
процессора, управляемого в каждом такте. Компоновка "длинных"
командных слов производится на завершающей стадии трансляции и характерна для
суперскалеров VLIW- и EPIC -архитектуры.
Освещаются как не оптимизированная, "быстрая", компоновка, так и компоновка,
использующая решающие правила на основе исследования графа работ внутри
непрерываемого участка программы. При компоновке учитываются и команды
вида if-then-else,
не использующие условный переход.
Оглавление | - |
Тест 612 минут | - | |
Лекция 743 минуты | Оптимальное программирование в архитектуре управления каждым тактом
Обсуждаются вопросы технологии и рекомендации для оптимального
программирования процессора VLIW- или EPIC-архитектуры, управляемого в каждом такте. Приводится
пример составления программы расчета нейронной сети. Рассматривается
оптимизированная компоновка командных слов одной из "исторических"
архитектур (предположительно - 5Э73) с элементами синхронизации исполнительных
устройств.
Оглавление | - |
Тест 718 минут | - | |
Лекция 858 минут | Оптимальное программирование процессоров EPIC-архитектуры
Освещается проблема организации интенсивного ветвления вычислений
с помощью механизма предикатов без традиционного использования команд условного перехода,
значительно увеличивающего время выполнения программы. Применение предикатов
характерно для процессоров EPIC-архитектуры, лежащей в основе новейших
разработок ряда "Эльбрус". Рассматриваются примеры таких
ветвящихся алгоритмов, как сортировка и поиск, в которых теоретическая оценка сложности значительно
отличается от сложности, практически достижимой при
программировании.
Оглавление | - |
Тест 89 минут | - | |
Лекция 946 минут | Вычислительные системы нетрадиционной архитектуры
Рассматриваются некоторые "нетрадиционные"
архитектуры, отражающие альтернативный поиск и эффективные решения при создании современных
архитектур многопроцессорных вычислительных систем. Среди таких архитектур:
однородные вычислительные среды, легшие в основу транспьютерных сетей;
"гиперкуб", совмещающий адресацию со структурой связей,
систолические матрицы. Исследуется способ построения самообучающихся систем управления на основе
применения ассоциативной памяти. Приводится пример практического построения
масспроцессорной системы. Изучаются вопросы построения
нейрокомпьютеров.
Оглавление | - |
Тест 915 минут | - | |
Лекция 1046 минут | Асинхронная ВС на принципах "data flow"
Обсуждается проблема практического применения принципа data flow
при построении асинхронных вычислительных систем. В таких системах коммутация взаимодействия
процессорных элементов решающего поля для выполнения программы отделена от
собственно вычислений и слабо зависит от них. Формулируются принципы
составления программы коммутации и анализируется ее выполнение.
Оглавление | - |
Тест 1015 минут | - | |
Лекция 111 час 4 минуты | Программирование задач для асинхронной ВС архитектуры "data flow"
Приводятся примеры программирования в архитектуре асинхронной ВС
на принципах data flow. Рассматриваются задачи численного интегрирования, умножения матриц,
решения системы линейных уравнений. Исследуются основы трансляции с языков
высокого уровня.
Оглавление | - |
Тест 1118 минут | - | |
Лекция 121 час 21 минута | SPMD-технология на базе симметричной ВС
Рассматривается архитектура вычислительной системы, основанная на
принципе "одна программа — много потоков данных".
Показывается, что этот принцип, реализующий распараллеливание "по информации", характерен и
эффективен при решении задач, сводящихся к обработке больших массивов
данных, а также при решении задач на основе перебора многих вариантов
поиска такого решения. Представлены общая структура и основные особенности
системы команд.
Оглавление | - |
Тест 1215 минут | - | |
Лекция 131 час 14 минут | Задача логического вывода и когерентность кэш-памяти в ВС SPMD-архитектуры
Продолжается рассмотрение SPMD-технологии и ее применения к
решению задач логического вывода. Исследуется проблема согласования оперативного совместного
использования результатов счета, находящихся в кэш-памяти процессоров, до их
поступления в общую память, — проблема когерентности кэшей. Предлагается
решать эту проблему с помощью механизма закрытия адресов, что совпадает с общей идеей
data flow. Освещается возможность применения памяти предикатов при решении
задач по SPMD-технологии.
Оглавление | - |
Тест 1312 минут | - | |
5 часов | - |