Difference between revisions of "BSc: HighPerformanceComputing"
I.konyukhov (talk | contribs) |
I.konyukhov (talk | contribs) |
||
Line 42: | Line 42: | ||
| style="width:60%" | Содержание дисциплины по темам |
| style="width:60%" | Содержание дисциплины по темам |
||
|- style="vertical-align:middle; background-color:#F8F9FA; color:#202122;" |
|- style="vertical-align:middle; background-color:#F8F9FA; color:#202122;" |
||
− | | style="text-align:center;" | 1. || Введение в высокопроизводительные вычисления, OpenMP и OpenCL || |
+ | | style="text-align:center;" | 1. || Введение в высокопроизводительные вычисления, OpenMP и OpenCL || - Существующие суперкомпьютерные системы-<br>- Модель общей памяти<br>- Подходы к программированию MIMD и SIMD<br>-Массивно-параллельные ускорители<br>-Иерархия памяти |
− | Подходы к программированию MIMD и SIMD *Массивно-параллельные ускорители *Иерархия памяти |
||
|- style="background-color:#F8F9FA; color:#202122;" |
|- style="background-color:#F8F9FA; color:#202122;" |
||
| style="text-align:center;" | 2. || Параллельные алгоритмы линейной алгебры |
| style="text-align:center;" | 2. || Параллельные алгоритмы линейной алгебры |
Revision as of 17:10, 8 February 2024
Высокопроизводительные вычисления
- Квалификация выпускника: бакалавр
- Направление подготовки: 09.03.01 - “Информатика и вычислительная техника”
- Направленность (профиль) образовательной программы: Математические основы ИИ
- Программу разработал(а): Конюхов И.В.
1. Краткая характеристика дисциплины
Изучение дисциплины обеспечивает формирование и развитие компетенций обучающихся в области программного обеспечения и его разработки; искусственного интеллекта и его применения для решения различных прикладных задач в рамках профессиональной деятельности. В ходе освоения дисциплины обучающиеся рассматривают некоторые известные численные алгоритмы и особенности их параллельной реализации на центральных и графических процессорах. Рассматриваются прямые методы решения систем линейных алгебраических уравнений с матрицами общего и специального типов (метод Гаусса, разложение Холецкого, прогонка), итерационные методы решения систем линейных уравнений (методы простой итерации и верхней релаксации), вопросы реализации разреженных матриц и алгебры над ними, методы Монте-Карло, численные методы решения систем обыкновенных дифференциальных уравнений и уравнений с частными производными, а также новейшие физически-информированные нейронные сети.
2. Перечень планируемых результатов обучения
- Целью освоения дисциплины является формирование общего понимания высокоэффективной реализации общих вычислительных алгоритмов с использованием процессоров различных типов и архитектур, а также демонстрация современных подходов к вычислительным алгоритмам на базе технологий машинного обучения.
- Задачами дисциплины являются изучение технологий параллельного программирования на центральных, графических и нейропроцессорах, анализ вычислительных алгоритмов с целью выявления точек параллелизма (hotpoints) и узких мест (bottle necks), а также внедрение технологий искусственного интеллекта и нейронных сетей в классические вычислительные задачи.
Общая характеристика результата обучения по дисциплине
- Знания:
- подходов к параллельному программированию,
- архитектур современных процессоров,
- программных моделей с общей памятью,
- архитектуры современных графических процессоров,
- основ выполнения вычислений общего назначения на разных платформах,
- современных подходов к программированию алгоритмов решения задач математики и физики.
- Умения:
- SIMD- и MIMD-программирование для CPU,
- SIMD-программирование для GPU,
- выполнять синхронизацию потоков,
- выполнять оптимизация общей памяти.
- Навыки (владения):
- проведения анализ алгоритмов на предмет возможного параллелизма с выявлением "горячих точек" и "бутылочных горлышек",
- применения современного параллельного программирования к методам статистики,
- решения систем алгебраических уравнений наиболее эффективным способом,
- решения основных типов дифференциальных уравнений, встречающихся в широком спектре реальных задач,
- применения современных вычислительных алгоритмов на основе машинного обучения для решения различных типов дифференциальных уравнений.
3. Структура и содержание дисциплины
№ п/п |
Наименование раздела дисциплины |
Содержание дисциплины по темам |
1. | Введение в высокопроизводительные вычисления, OpenMP и OpenCL | - Существующие суперкомпьютерные системы- - Модель общей памяти - Подходы к программированию MIMD и SIMD -Массивно-параллельные ускорители -Иерархия памяти |
2. | Параллельные алгоритмы линейной алгебры | - - - - |
3. | Параллельные методы решения дифференциальных уравнений | - - - - |
4. | Физически обоснованные нейронные сети | - - - - |
5. | Параллельные методы Монте-Карло | - - - - |
6. | Высокопроизводительные вычисления и современные языки программирования | - - - - |
4. Методические и оценочные материалы
Задания для практических занятий:
№ п/п |
Наименование раздела дисциплины (модуля) |
Перечень рассматриваемых тем (вопросов) (Указываются ВСЕ задания для практических занятий по разделам дисциплины подробно в соответствии с темами) |
1. | ||
2. | ||
3. | ||
4. | ||
5. | ||
... |
Текущий контроль успеваемости обучающихся по дисциплине:
(К формам текущего контроля можно отнести собеседование, коллоквиум, тест, контрольную работу, лабораторную работу, эссе, реферат и иные творческие работы.)
№ п/п |
Наименование раздела дисциплины |
Форма текущего контроля (выберите соответствующие формы контроля) |
Материалы текущего контроля (Указываются ВСЕ ЗАДАНИЯ/ВОПРОСЫ текущего контроля успеваемости обучающихся по разделам дисциплины подробно в соответствии с требованиями) |
1. | Проверка выполнения домашних заданий; Устный / письменный опрос; Тестирование (письменное или компьютерное); Эссе; Доклад; Защита проекта; Коллоквиум; Проверка разработки отдельных частей кода программного продукта и другие формы текущего контроля, используемые Вами на занятиях |
Например:
Устный / письменный опрос: Другие формы текущего контроля, используемые Вами на занятиях | |
2. | Проверка выполнения домашних заданий; Устный / письменный опрос; Тестирование (письменное или компьютерное); Эссе; Доклад; Защита проекта; Коллоквиум; Проверка разработки отдельных частей кода программного продукта и другие формы текущего контроля, используемые Вами на занятиях |
||
3. | Проверка выполнения домашних заданий; Устный / письменный опрос; Тестирование (письменное или компьютерное); Эссе; Доклад; Защита проекта; Коллоквиум; Проверка разработки отдельных частей кода программного продукта и другие формы текущего контроля, используемые Вами на занятиях |
||
4. | Проверка выполнения домашних заданий; Устный / письменный опрос; Тестирование (письменное или компьютерное); Эссе; Доклад; Защита проекта; Коллоквиум; Проверка разработки отдельных частей кода программного продукта и другие формы текущего контроля, используемые Вами на занятиях |
||
5. | Проверка выполнения домашних заданий; Устный / письменный опрос; Тестирование (письменное или компьютерное); Эссе; Доклад; Защита проекта; Коллоквиум; Проверка разработки отдельных частей кода программного продукта и другие формы текущего контроля, используемые Вами на занятиях |
||
... |
Контрольные вопросы для подготовки к промежуточной аттестации:
№ п/п |
Наименование раздела дисциплины |
Вопросы |
1. | ||
2. | ||
3. | ||
4. | ||
5. | ||
... |
Вопросы/Задания к промежуточной аттестации в устной/письменной форме:
(Указываются ВСЕ ЗАДАНИЯ/ВОПРОСЫ для промежуточной аттестации.)
1.
2.
3.
...
48.
49.
50.
...
Перечень учебно-методического обеспечения дисциплины
Список основной литературы:
- Barbara Chapman, Gabriele Jost, Ruud van der Pas. (2008) Using OpenMP: Portable Shared Memory Parallel Programming, The MIT Press,
- Scarpino, M. (2011) OpenCL in Action: How to Accelerate Graphics and Computations, Manning.
- Banger, R., Bhattacharyya, K. (2013) OpenCL Programming by Example, Packt Publishing.
- Sanders, J., Kandrot, E. (2010) CUDA by example: an introduction to general-purpose GPU programming, Addison-Weslye
Список дополнительной литературы:
- Введение в высокопроизводительные вычисления: introduction-high-performance-computing
- Введение в параллельное программирование: introduction-parallel-programming
- Учебные материалы по OpenMP: OpenMP-tutorials
- Учебные материалы по OpenCL: OpenCL-tutorials
Методические указания для обучающихся по освоению дисциплины
Вид учебных занятий/деятельности |
Деятельность обучающегося |
Лекция | Написание конспекта лекций: кратко, схематично, последовательно фиксировать основные положения лекции, выводы, формулировки, обобщения; помечать важные мысли, выделять ключевые слова, термины. Обозначить вопросы, термины или другой материал, который вызывает трудности, пометить и попытаться найти ответ в рекомендуемой литературе. Если самостоятельно не удается разобраться в материале, необходимо сформулировать вопрос и задать преподавателю на консультации, во время семинарского (практического) занятия. |
Практические (лабораторные) занятия | Практические занятия предназначены прежде всего для разбора отдельных сложных положений, тренировки аналитических навыков, а также для развития коммуникационных навыков. Поэтому на практических занятиях необходимо участвовать в тех формах обсуждения материала, которые предлагает преподаватель: отвечать на вопросы преподавателя, дополнять ответы других студентов, приводить примеры, задавать вопросы другим выступающим, обсуждать вопросы и выполнять задания в группах. Работа на практических занятиях подразумевает домашнюю подготовку и активную умственную работу на самом занятии. Работа на практических занятиях в форме устного опроса заключается прежде всего в тренировке навыков применять теоретические положения к самому разнообразному материалу. В ходе практических занятий студенты работают в группах для обсуждения предлагаемых вопросов. |
Самостоятельная работа | Самостоятельная работа состоит из следующих частей: 1) чтение учебной, справочной, научной литературы; 2) повторение материала лекций; 3) составление планов устных выступлений; 4) подготовка презентаций. При чтении учебной литературы нужно разграничивать для себя материал на отдельные проблемы, концепции, идеи. Учебную литературу можно найти в электронных библиотечных системах, на которые подписан АНО Университет Иннополис. |
Доклад | Публичное, развернутое сообщение по определенной теме или вопросу, основанное на документальных данных. При подготовке доклада рекомендуется использовать разнообразные источники, позволяющие глубже разобраться в теме. Учебную литературу можно найти в электронных библиотечных системах, на которые подписан АНО Университет Иннополис. |
Дискуссия | Публичное обсуждение спорного вопроса, проблемы. Каждая сторона должна оппонировать мнение собеседника, аргументируя свою позицию. |
Разработка отдельных частей кода | Разработать часть кода, исходя из поставленной задачи и рекомендаций преподавателя. При выполнении работы рекомендуется обращаться к материалам лекций и семинарских (практических) занятий. Если возникают затруднения, необходимо проконсультироваться с преподавателем. |
Выполнение домашних заданий и групповых проектов | Для выполнения домашних заданий и групповых проектов необходимо получить формулировку задания от преподавателя и убедиться в понимании задания. При выполнение домашних заданий и групповых проектов необходимо проработать материалы лекций, основной и дополнительной литературы по заданной теме. |
Индивидуальная работа | При выполнение индивидуальной работы необходимо взять задание у преподавателя, ознакомиться с требованиями к выполнению работы, изучить поставленную проблему, найти решение проблемы. Если самостоятельно не удается разобраться в материале, необходимо сформулировать вопрос и задать преподавателю на консультации, во время семинарского (практического) занятия. Оформить результаты работы. |
Тестирование (устное/письменное) | При подготовке к тестированию необходимо проработать материалы лекций, семинаров, основной и дополнительной литературы по заданной теме. Основная цель тестирования – показать уровень сформированности знаний по конкретной теме или ее части. |
Методы и технологии обучения, способствующие формированию компетенции
(Указываются все используемые преподавателем методы и технологии обучения)
Методы и технологии обучения, способствующие формированию компетенции |
Например:
1. | Информационно – коммуникационная технология | |
2. | Технология развития критического мышления | Основные методические приемы развития критического мышления
|
3. | Проектная технология | |
4. | Технология проблемного обучения | |
5. | Кейс – технология | К методам кейс-технологий, активизирующим учебный процесс, относятся:
|
6. | Технология интегрированного обучения | |
7. | Педагогика сотрудничества | |
8. | Технологии уровневой дифференциации | |
9. | Групповая технология | |
10. | Традиционные технологии (классно-урочная система) | |
11. | Здоровьесберегающие технологии | |
12. | Игровая технология | |
13. | Модульная технология | |
14. | Технология мастерских | |
и др. |