План лекций: Лекция №1. Введение в тему, общие сведения. Введение
Вид материала | Лекция |
СодержаниеIbm stretch Illiac iv |
- Лекция № Введение в оау. Общие сведения. Общие понятия, 48.78kb.
- План лекций педиатрический факультет 1 семестр 1 лекция. Введение в анатомию человека., 216.63kb.
- Программа курса лекций, 23.66kb.
- Предлагаемый конспект опорных лекций отражает традиционный набор тем и проблем курса, 1047.31kb.
- План лекций курса «введение в профессию» Лекция Психология как область знаний и сфера, 30.21kb.
- План-график доктора филологических наук, профессора Голева, 49.31kb.
- Лекция введение в экологию (В. И. Торшин), 1146.79kb.
- Конспект лекций н. О. Воскресенская Москва 2008 Оглавление: Лекция Введение в дисциплину, 567.5kb.
- Текст лекций н. О. Воскресенская Оглавление Лекция 1: Введение в дисциплину. Предмет, 1185.25kb.
- Реферат по географии "Ресурсы пресной воды" План. 0 Введение (общие сведения), 156.09kb.
Архитектура высокопроизводительных компьютеров и
вычислительных систем.
План лекций:
Лекция №1. Введение в тему, общие сведения.
- Введение.
- Предмет курса.
- Классификация компьютеров:
- персональные компьютеры
- рабочие станции
- x-терминалы
- серверы
- мэйнфреймы
- минисуперкомпьютеры
- суперкомпьютеры
- кластеры
- мета компьютеры
- персональные компьютеры
- Нечеткость классификации, история развития суперкомпьютеров, сравнение с состоянием дел на данный момент. Рост частоты процессоров в сравнении с ростом производительности, значение архитектуры.
- Трактовка понятия «архитектура».
- Классификация компьютеров:
- Проблемная, предметная и объектная ориентация высокопроизводительных компьютеров и вычислительных систем. Специфика предъявляемых к ним требований.
- Системы классификационных признаков суперкомпьютеров.
- Классическая систематика Флинна.
- Дополнения Ванга и Бриггса к классификации Флинна.
- Классификация Фенга.
- Классификация Базу.
- Другие классификации.
- Классическая систематика Флинна.
- Классификация вычислительных систем: однопроцессорные и многопроцессорные системы; многопроцессорные системы с общей памятью и с локальной памятью; параллельные и распределенные вычислительные системы.
- Краткая история появления параллелизма в архитектуре ЭВМ.
- IBM 701 (1953), IBM 704 (1955): разрядно-параллельная память, разрядно-параллельная арифметика
- IBM 709 (1958): независимые процессоры ввода/вывода.
- IBM STRETCH (1961): опережающий просмотр вперед, расслоение памяти.
- ATLAS (1963): конвейер команд.
- CDC 6600 (1964): независимые функциональные устройства.
- CDC 7600 (1969): конвейерные независимые функциональные устройства.
- ILLIAC IV (1974): матричные процессоры.
- CRAY 1 (1976): векторно-конвейерные процессоры
- IBM 701 (1953), IBM 704 (1955): разрядно-параллельная память, разрядно-параллельная арифметика
- Краткая история появления параллелизма в архитектуре ЭВМ.
- Оценка производительности высокопроизводительных компьютеров и вычислительных систем.
- Стандарты в области оценки производительности.
- Стратегии построения систем тестирования.
- Виды тестов. Что такое FLOPS, MIPS. Синтетические тесты.
- Supercomputer TOP500, критерии ранжирования, тест LINPACK, место России.
- МВС-1000М, что это на самом деле.
- Закон Амдала, теоретический и реальный рост производительности при распараллеливании вычислений.
- Стандарты в области оценки производительности.
Лекция №2. Базовые архитектурные представления.
- Оценка производительности высокопроизводительных компьютеров и вычислительных систем, продолжение. История и цифры для сравнения.
- Stone Age in performance testing:
- WhetStone
- DhryStone
- WhetStone
- Рейтинги различных систем по WhetStone, критерии разбиения на суперкомпьютеры, мэйнфреймы, миникомпьютеры, рабочие станции и ПК и их изменение за последние 30 лет. Стоимость одного MWIPS, $K, ситуация за последние 30 лет.
- Пакеты тестов, базирующихся на реальных прикладных программах:
- SPEC (Standard Performance Evaluation Corporation)
- CPU2000
- CINT2000
- CFP2000
- CINT2000
- HPC96
- CPU2000
- TPC (Transaction Processing Performance Council)
- SPEC (Standard Performance Evaluation Corporation)
- Закон Гроша применительно к производительности компьютеров.
- Stone Age in performance testing:
- Многоплановое толкование понятия “архитектура”.
- Концепция взаимосвязи элементов сложной структуры.
- Компоненты логической, физической и программной структур.
- Концепция взаимосвязи элементов сложной структуры.
- Типы архитектур:
- фон-неймановская архитектура,
- гарвардская архитектура,
- Отступление, концепция многоуровневой работы ВМ, понятие семантического разрыва.
- не-фон-неймановские архитектуры.
- Стековая архитектура, каноническая стековая машина.
- Теговая архитектура (tagged architecture).
- Разрядно модульная архитектура (bit-slice architecture).
- Стековая архитектура, каноническая стековая машина.
- фон-неймановская архитектура,
Лекция №3. Базовые архитектурные представления, продолжение.
- Классификация функциональных устройств.
- Классификация процессоров.
- Архитектура системы команд.
- CISC процессоры.
- RISC процессоры.
- MISC процессоры.
- CISC процессоры.
- Матричные процессоры.
- Процессоры с конвейерной обработкой.
- Пример типового конвейера команд.
- Выигрыш от конвейерной обработки и основные проблемы эффективного заполнения конвейера.
- Пример типового конвейера команд.
- Суперскалярный процессор.
- Пример суперскалярной обработки. Процессор Pentium.
- Пример суперскалярной обработки. Процессор Pentium.
- VLIW машины.
- Коммуникационный процессор.
- Отступление, понятие о сигнальных процессорах:
- Систолические матрицы.
- Волновые процессоры.
- Систолические матрицы.
- Архитектура системы команд.
- Системы команд процессора.
- Типы команд.
- Принципы управления потоком команд.
- Методы адресации.
- Типы и размеры операндов.
- Типы команд.
- Типы процессорных сетей связи. Ключевые принципы организации системы памяти. Типы интерфейсов. Основные принципы организации ввода/вывода.
- Отступление: подъем популярности векторной обработки. Векторные операции в ПК. MMX, 3D now!.
Лекции №4,5,6. Архитектура суперкомпьютеров.
- Классификация архитектур суперкомпьютеров.
- Векторно-конвейерные суперкомпьютеры.
- Многопроцессорные векторные суперкомпьютеры.
- Суперкомпьютеры с архитектурой симметричных многопроцессорных систем.
- Суперкомпьютеры массивно параллельной архитектуры.
- Суперкомпьютеры с обобщенной архитектурой кластерных систем, систем с массовым параллелизмом и симметричных многопроцессорных систем.
- Векторно-конвейерные суперкомпьютеры.
- Запоминающие устройства ЭВМ
- Определение понятия «память».
- Основная память.
- Классификация памяти по специфике использования (СОЗУ, ОЗУ, ПЗУ, ППЗУ).
- Виды памяти: статическая и динамическая.
- DRAM.
- Структура организации блока памяти (2D, 3D, 2.5D).
- Регенерация памяти. Различные методы регенерации (ROR, CBR, SR).
- Структура организации блока памяти (2D, 3D, 2.5D).
- SRAM.
- Классификация (ROM, PROM, EPROM, EEPROM, Flash Memory)
- Понятие «кэш память».
- Политики чтения и записи из/в кэш память.
- Варианты организации кэш памяти (с прямым отображением (direct mapped), полностью ассоциативный (fully associative) и группово-ассоциативный (set-associative)).
- Политики чтения и записи из/в кэш память.
- Классификация (ROM, PROM, EPROM, EEPROM, Flash Memory)
- Аппаратный контроль корректности работы памяти. Контроль четности. ECC.
- Логическая организация памяти.
- Основные характеристики памяти.
- Варианты организации памяти ЭВМ с целью ускорения к ней доступа, и обеспечения возможности параллельного доступа. Расслоение памяти.
- Классификация памяти по специфике использования (СОЗУ, ОЗУ, ПЗУ, ППЗУ).
- Дисковая память.
- Варианты эффективной организации дисковых накопителей с целью повышения надежности и скорости доступа. RAID.
- Уровни RAID.
- Аппаратное обеспечение RAID.
- Затраты и целесообразность применения RAID.
- Уровни RAID.
- Варианты эффективной организации дисковых накопителей с целью повышения надежности и скорости доступа. RAID.
- Определение понятия «память».
- Специфика подсистем ввода/вывода.
- Топология сетей связей.
- Компоненты ЭВМ (АЛУ, управление, память, периферийные устройства). Необходимость наличия связей между компонентами.
- Варианты организации связей. Компромисс между количеством связей и скоростью передачи данных.
- Шины. Мезонинные шины. Синхронизация на шине. Bus masters and bus slaves. Арбитраж. История развития шин на примере IBM PC (XT, ISA, EISA, VLB, PCI).
- Варианты организации сетей связей процессоров (решетка, кольцо, дерево, N мерный тор, гиперкуб).
- Компоненты ЭВМ (АЛУ, управление, память, периферийные устройства). Необходимость наличия связей между компонентами.
- Более подробно о основных классах современных параллельных компьютеров.
- Симметричные мультипроцессорные системы (SMP).
- Массивно-параллельные системы (МРР).
- Системы с неоднородным доступом к памяти (NUMA).
- Параллельно-векторные системы (PVP).
- Кластерные системы.
- Модели программирования, применяемые в различных классах параллельных ЭВМ.
- Симметричные мультипроцессорные системы (SMP).
Лекция №7. Архитектура реально существующих суперкомпьютеров.
- Векторно-конвейерные супер-ЭВМ (на примере CRAY C90).
- Структура оперативной памяти.
- Ввод-вывод.
- Организация процессора. Состав регистров. Функциональные устройства. Управление.
- Параллельное выполнение программ. Векторная обработка. Зацепление команд.
- Структура процессора и примеры выполнения различных векторных команд.
- Понятие о векторизации программ. Преграды для векторизации.
- Объединение отдельных векторных процессоров в C90.
- Структура оперативной памяти.
- Массивно-параллельные компьютеров (на примере CRAY T3D).
- Вычислительные узлы и процессорные элементы.
- Коммуникационная сеть. Нумерация вычислительных узлов.
- Факторы, снижающие производительность параллельных компьютеров. Закон Амдала и его следствия. Равномерная загрузка процессоров системы.
- Понятие о распараллеливании программ. Модель программирования MPP систем (message passing).
- Вычислительные узлы и процессорные элементы.
- Характеристики и архитектура современных микропроцессоров (Alpha, Power PC, SPARC).
Лекция №8. Слабосвязанные многомашинные системы.
- Кластерные системы.
- Кластерный подход к обеспечению высокой готовности и наращиванию производительности компьютеров.
- Предметная ориентация кластерных систем. Отличие кластеров серверов от вычислительных кластеров (MOSIX). Преимущества кластерного подхода к организации систем с множественным потоком команд и множественным потоком данных. Классификация кластеров. Архитектура кластерных систем. Характеристика коммуникационной инфраструктуры. Особенности организации взаимодействия между процессами. Модели обмена сообщениями. Повышение производительности кластерных систем.
- VAX кластер, как исторический прототип. Признаки VAX кластера.
- Системы высокой готовности.
- Задача обеспечения продолжительного функционирования системы. надежность, готовность и удобство обслуживания.
- Среднее время наработки на отказ (MTBF - Mean Time Between Failure), коэффициент готовности.
- Типы систем, свойством которых является та или иная форма снижения планового и непланового времени простоя.
- Задача обеспечения продолжительного функционирования системы. надежность, готовность и удобство обслуживания.
- Linux кластеры. Проект Beowulf. Примеры Beowulf кластеров: theHive, Avalon. Принципы построения Beowulf кластеров. Значение сетей связи, варианты организации сетей связи. Классы Beowulf систем.
- Кластерный подход к обеспечению высокой готовности и наращиванию производительности компьютеров.
- Мета-компьютинг и мета-компьютеры.
- Примеры: distributed net, SETI@home.
- Примеры: distributed net, SETI@home.
Лекция №9,10. Операционные системы распределенных вычислительных систем.
- 2 взгляда на ОС. ОС, как менеджер ресурсов.
- История ОС. Развитие от библиотек процедур до современного состояния.
- Виды операционных систем (сетевые ОС, распределенные ОС, ОС мультипроцессорных ЭВМ).
- Принципы построения распределенных ОС (прозрачность, гибкость, надежность, эффективность, масштабируемость).
- Операционные системы мультипроцессорных ЭВМ. Процессы и нити. Виды многозадачности.
- Взаимодействие процессов. Взаимное исключение критических интервалов. Алгоритмы Деккера и Петерсона. Использование неделимой операции TEST_and_SET_LOCK. Семафоры Дейкстры.
- Планирование процессов.
- Коммуникации. Семиуровневая модель ISO.
- Синхронизация в распределенных системах. Синхронизация времени. Абсолютное и логическое время. Алгоритм Лэмпорта. Выбор координатора в многопроцессорной системе.
- Распределенные файловые системы. Файловые серверы и серверы каталогов. Именование ресурсов. Двухуровневая схема именования. Семантика разделения файлов. Кэширование. Проблема когерентности кэшей. Размножение файлов. Пример: NFS.
- Распределенная общая память. Алгоритмы реализации DSM (с центральным сервером, миграционный алгоритм, алгоритм с размножением для чтения, с полным размножением). Модели консистентности.
- Обеспечение надежности в распределенных системах. Виды отказов, восстановление после отказов.
Лекция №11. Программирование для высокопроизводительных ЭВМ.
- Две модели программирования: последовательная и параллельная. Две парадигмы параллельного программирования. Параллелизм данных. Параллелизм задач.
- Издержки и выигрыш при реализации параллельных и векторных вычислений. Трудовые затраты на распараллеливание или векторизацию программы. Способы векторизации и распараллеливания программ. Применение разных языков программирования. Различие и сходство между распараллеливанием и векторизацией программ. Сходство алгоритмов - параллелизм данных. Различие алгоритмов - параллелизм действий.
- Векторные ЭВМ и векторные программы. Предельное быстродействие векторных программ. Две части программ - скалярная и векторная. Дополнительные затраты на организацию векторных вычислений во время работы программы. Ограниченное число векторных регистров. Ограничения на используемые операторы в векторизуемых циклах.
- Параллельные ЭВМ и параллельные программы. Три части программы - параллельная, последовательная и обмен данными. Синхронизация процессов, равномерность загрузки процессов. Средства распараллеливания в трансляторах и параллельные библиотеки.
Лекция №12. Message Passing Interface (MPI).
- MPI. История MPI. Стандарты MPI. Терминология и обозначения. Общие процедуры MPI. Прием/передача сообщений между отдельными процессами. Объединение запросов на взаимодействие. Совмещенные прием/передача сообщений. Коллективные взаимодействия процессов. Синхронизация процессов. Работа с группами процессов. Предопределенные константы. Примеры MPI-программ.
Лекция №13. Параллельный язык mpC.
- Решаемые задачи. Особенности синтаксиса. Сети процессов. Операции над набором процессов. Тип сети, определение типов сети. Синхронизация процессов. Барьерные функции. Подсети. Векторные вычисления. Неоднородные вычисления, распределение нагрузки в гетерогенном окружении.
Лекция №14,15,16. Базовые вычислительные алгоритмы и методы распараллеливания вычислений.
- Задача распараллеливания алгоритма. 3 основных требования к параллельному алгоритму: concurrency, scalability, locality.
- Методика разработки параллельных алгоритмов.
- Разбиение исходной задачи. Декомпозиция на уровне данных, функциональная декомпозиция.
- Определение связей. Локальные и глобальные связи. Выявление параллелизма. Неструктурированные и динамические сети связи. Асинхронные коммуникации.
- Агломерация. Увеличение гранулярности данных и вычислений. Репликация данных и вычислений.
- Отображение на реальное аппаратное обеспечение. Алгоритмы динамической балансировки загрузки. Алгоритмы планирования задач.
- Разбиение исходной задачи. Декомпозиция на уровне данных, функциональная декомпозиция.
Assembled 17/12/2001
By Ivan Shagin