среда, 18 января 2017 г.

Материалы для подготовке к экзамену 24.01.2017 (ВМК)

http://distcomp.ru/posypkin/curs/fall2016.zip
Новая программа экзамена 24 января 2017 года для студентов ВМК

Программа экзамена по курсу
«Архитектура и программное обеспечение высокопроизводительных вычислительных систем»
осенний семестр, 2016 год
1. Классификации архитектур вычислительных систем. Классификации Флинна, Ванга-Бриггса, Фенга, Шора, Хендлера, Хокни, Скилликорна.
2. Архитектуры SMP, MPP, PVP. Кластерная архитектура.
3. Особенности организации памяти в современных персональных компьютерах и МВС. Различные виды памяти. Различные архитектуры МВС по типу доступа к памяти. (UMA. NUMA, NORMA и т.д.) Классификация архитектур. Общая схема.
4. Особенности организации памяти в современных персональных компьютерах и МВС. Алгоритмы обмена данными между уровнями кэша L1-L2-L3. Механизмы поддержки когерентности кэшей в МВС.
5. Топологии сетей МВС. Сферы применения. Свойства. Характеристики. Примеры использования (суперкомпьютеры из top500).
6. Графические ускорители. Особенности организации памяти и вычислений. Типы шейдеров и шейдерные языки. Понятие GPGPU и применение CUDA.
7. Архитектура MIC. Особенности организации памяти и вычислений. Отличие от графических ускорителей. Основные отличия поколений Xeon Phi и направления развития.
8. Коммутаторы для МВС. Простые коммутаторы. Алгоритмы арбитража. Составные коммутаторы. Коммутатор Клоза. Баньян-сети. Дельта-сети.
9. Способы оценки производительности МВС. Методы оценки и единицы измерения. Виды оценок (актуальные на конец 2016 года).  Принципы формирования top 500 и др. top.
10. Концепция грид-систем, способы классификации грид-систем. Грид-системы из персональных компьютеров.
11. Система Condor.
12. Система BOINC. Принцип работы инфраструктуры. BOINC-менеджер, BOINC-клиент, сервер, серверная и клиентская части распределённого приложения.
13. Система BOINC. Основные понятия. Приложение, версия приложения, расчётный блок, результат, физические и логические имена файлов. Master-URL. Начисляемые баллы.
14. Архитектура BOINC-сервера. Linux. Apache. MySQL, PHP. Демоны.
15. Установка BOINC-сервера. Пользователь root. Установка служебных пакетов. Использование git. Технология виртуализации.
16. Администрирование BOINC-сервера. Основные команды Линукс. Права доступа к файлу. SSH-содинение,
17. Основные этапы установки BOINC-сервера и создания проекта.
18. Запуск предустановленного тестового приложения в инфраструктуре BOINC.
19. Ускорение и эффективность параллельных программ. Информационные зависимости по данным. Закон Амдала.
20. Многопоточное программирование: обзор технологий POSIX Threads, функции для создания и завершения потоков.
21. Проблема недетерминизма в многопоточных программах.
22. Поддержка синхронизации потоков в POSIX Threads. Семафоры.
23. Критические секции в POSIX Threads.
24. Условные переменные в POSIX Threads.
25. Блокирование на чтение-запись в POSIX Threads.