Высокопроизводительные вычислительные системы

Шифр дисциплины в ГОС: ДС.02

Цель дисциплины "Высокопроизводительные вычислительные системы" состоит в изучении:

  • основных архитектурных концепций построения высокопроизводительных средств обработки информации;
  • макроструктуры большемасштабных распределенных вычислительных систем (ВС);
  • функциональных структур и наиболее интересных промышленных реализаций высокопроизводительных вычислительных систем.

Особое внимание уделено архитектурно наиболее совершенному классу ВС – распределенным системам с программируемой структурой.



Направление 230100 "Информатика и вычислительная техника"
Профессионально-образовательная программа "Вычислительные машины, комплексы, системы и сети"

  • ОК-2. Умеет логически верно, аргументировано и ясно строить устную и письменную речь;
  • ОК-8. Осознаёт социальную значимость своей будущей профессии, обладает высокой мотивацией к выполнению профессиональной деятельности;
  • ОК-10. Использует основные законы естественнонаучных дисциплин в профессиональной деятельности, применяет методы математического анализа и моделирования, теоретического и экспериментального исследования.
  • ОК-12. Имеет навыки работы с компьютером как средством управления информацией;
  • ПК-4. Разрабатывать модели компонентов информационных систем, включая модели баз данных.
  • ПК-5. Разрабатывать компоненты программных комплексов и баз данных, использовать современные инструментальные средства и технологии программирования;
  • ПК-10. Сопрягать аппаратные и программные средства в составе информационных и автоматизированных систем.

В результате освоения дисциплины студент должен

знать:

  • архитектуру и структурную организацию высокопроизводительных вычислительных систем, методы оптимизации программного обеспечения для конвейерезированных суперскалярных процессоров, методы организации эффективной работы с кэш-памятью процессора, подходы к векторизации кода и использованию SIMD-инструкций процессоров (SSE, AVX), средства создания и анализа корректности многопоточных программ (POSIX threads, OpenMP, Cilk, TBB),  средства создания параллельных программ для систем с распределенной памятью (MPI, Cray, Chapel, IBM X10, MapReduce), инструментальные средства программирования специализированных ускорителей и сопроцессоров (NVIDIA CUDA, Intel Xeon Phi);

уметь:

  • минимизировать количество ошибок предсказания переходов в программах для конвейерезированных суперскалярных процессоров, оптимизировать доступ к кэш-памяти процессора, использовать векторные инструкции (SSE, AVX), создавать многопоточные программы (OpenMP, Cilk, TBB) и анализировать их эффективность, создавать и анализировать эффективность параллельных программ для распределенных вычислительных систем (MPI, Cray Chapel, IBM X10, MapReduce), создавать параллельные программы для специализированных ускорителей (NVIDIA CUDA, OpenCL);

владеть:

  • техниками оптимизации программного обеспечения для высокопроизводительных вычислительных систем, средствами анализа эффективности программ (профилировщиками).

Направление 010300 "Фундаментальная информатика и информационные технологии"
Профессионально-образовательная программа "Супервычисления"

Дисциплина относится к вариативной части профессионального цикла (дисциплины по выбору) (Б3). Шифр дисциплины в рабочем учебном плане – Б3.В.ДВ.1.1.

Процесс изучения дисциплины направлен на формирование следующих компетенций:

  • ПК-1. способность применять в профессиональной деятельности современные языки программирования и языки баз данных, методологии системной инженерии, системы автоматизации проектирования, электронные библиотеки и коллекции, сетевые технологии, библиотеки и пакеты программ, современные профессиональные стандарты информационных технологий (в соответствии с профилизацией);
  • ПК-2. способность профессионально решать задачи производственной и технологической деятельности с учетом современных достижений науки и техники, включая: разработку алгоритмических и программных решений в области системного и прикладного программирования; разработку математических, информационных и имитационных моделей по тематике выполняемых исследований; создание информационных ресурсов глобальных сетей, образовательного контента, прикладных баз данных; разработку тестов и средств тестирования систем и средств на соответствие стандартам и исходным требованиям; разработку эргономичных человеко-машинных интерфейсов (в соответствии с профилизацией);
  • ПК-23. владение методами и навыками использования и конфигурирования сетевых технологий;
  • ПК-24. Владение методами и навыками использования и конфигурирования операционных систем и платформенных окружений;
  • ПК-27. способность квалифицированно применять в профессиональной деятельности современные языки программирования и языки баз данных, методологии системной инженерии, системы автоматизации проектирования, электронные библиотеки и коллекции, сетевые технологии, библиотеки и пакеты программ, современные профессиональные стандарты информационных технологий.

В результате освоения дисциплины студент должен

знать:

  • архитектуру и структурную организацию высокопроизводительных вычислительных систем, методы оптимизации программного обеспечения для конвейерезированных суперскалярных процессоров, методы организации эффективной работы с кэш-памятью процессора, подходы к векторизации кода и использованию SIMD-инструкций процессоров (SSE, AVX), средства создания и анализа корректности многопоточных программ (POSIX threads, OpenMP, Cilk, TBB),  средства создания параллельных программ для систем с распределенной памятью (MPI, Cray, Chapel, IBM X10, MapReduce), инструментальные средства программирования специализированных ускорителей и сопроцессоров (NVIDIA CUDA, Intel Xeon Phi);

уметь:

  • минимизировать количество ошибок предсказания переходов в программах для конвейерезированных суперскалярных процессоров, оптимизировать доступ к кэш-памяти процессора, использовать векторные инструкции (SSE, AVX), создавать многопоточные программы (OpenMP, Cilk, TBB) и анализировать их эффективность, создавать и анализировать эффективность параллельных программ для распределенных вычислительных систем (MPI, Cray Chapel, IBM X10, MapReduce), создавать параллельные программы для специализированных ускорителей (NVIDIA CUDA, OpenCL);

владеть:

  • техниками оптимизации программного обеспечения для высокопроизводительных вычислительных систем, средствами анализа эффективности программ (профилировщиками).

Преподаватель: Ефимов Александр Владимирович