===== Параллельное программирование ===== [[https://ssau.ru/rasp?staffId=60085001|Расписание занятий на осенний семестр 2024/25 уч.года.]] [[https://bbb.ssau.ru/b/tqv-dvf-gny|Видеоконференция]] [[https://clck.ru/drstY| Видеоконференция Zoom]] [[https://clck.ru/TDFwJ| Материалы курса на сайте проекта Templet]] ==== Объявления ==== ==== Лекции (весна 2025) ==== - **10.02.25** - Вводная лекция. До параллельных архитектур. - **17.02.25** - Параллелизм в архитектурах компьютеров. - **24.02.25** - Суперкомпьютеры. Приложения и стили программирования (до параллельно-рекурсивных алгоритмов). - **03.03.25** - Параллельно-рекурсивные алгоритмы, конвейерные, клиент-серверные, взаимодействующие равные и далее алгоритмические скелеты. - **10.03.25** - Алгоритмические скелеты с примерами. - **17.03.25** - Анализ эффективности параллельных алгоритмов и программ. - **24.03.25** - Программирование в распределённой памяти: обзор интерфейса передачи сообщений MPI. - **31.03.25** - - Разбор лекций Т.Маттсона - от начала до Mod 5: Parallel Loops (making the Pi program simple), слайд 73. - **7.04.25** - - Разбор лекций Т.Маттсона - от Mod 5: Parallel Loops до Data environment. - **14.04.25** - - Разбор лекций Т.Маттсона - от Data environment слад 104. ==== Лекции (осень 2024) ==== - **3.09.24** - Вводная лекция. Что мы будем понимать под параллельным программированием. Обзор параллелизма в современном аппаратном обеспечении (до технологий типа SSE)[[https://templet.ssau.ru/wiki/_media/presentations/%D0%B2%D0%B2%D0%BE%D0%B4%D0%BD%D0%B0%D1%8F_%D0%BB%D0%B5%D0%BA%D1%86%D0%B8%D1%8F.pdf|см. до 13 слайда]]. - **10.09.24** - Продолжение вводной лекции. Параллельные архитектуры и технологии от SSE до суперкомпьютеров [[https://templet.ssau.ru/wiki/_media/presentations/%D0%B2%D0%B2%D0%BE%D0%B4%D0%BD%D0%B0%D1%8F_%D0%BB%D0%B5%D0%BA%D1%86%D0%B8%D1%8F.pdf|13 слайд]] и [[https://templet.ssau.ru/wiki/presentations/%D0%BB%D0%B5%D0%BA%D1%86%D0%B8%D0%B8_%D0%BF%D0%BE_%D0%BA%D1%83%D1%80%D1%81%D1%83_%D0%BF%D0%B0%D1%80%D0%B0%D0%BB%D0%BB%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5| Дополнительные материалы из Википедии]]. - **1.10.24** - Продолжение вводной лекции (со слайда 16). Приложения и стили программирования. Средства программирования. Кластер Сергей Королев. - **1.10.2024** - Алгоритмические скелеты (до примеров map-reduce, task-bag) [[https://templet.ssau.ru/wiki/_media/presentations/%D1%81%D0%BA%D0%B5%D0%BB%D0%B5%D1%82%D0%BE%D0%BD%D1%8B.pdf|см. Высокоуровневое параллельное программирование, до слайда 17]]. - **8.10.2024** - Алгоритмические скелеты (примеры map-reduce, task-bag). Лекция "Высокоуровневое параллельное программирование" с 17 слайда до конца. - **15.10.2024** - Примеры для практик [[https://templet.ssau.ru/wiki/_media/presentations/%D1%80%D0%B0%D0%B7%D0%B4%D0%B5%D0%BB%D1%8F%D0%B5%D0%BC%D0%B0%D1%8F_%D0%BF%D0%B0%D0%BC%D1%8F%D1%82%D1%8C_api.pdf|pdf]]. Анализ эффективности параллельных алгоритмов и программ [[https://templet.ssau.ru/wiki/_media/presentations/%D0%B0%D0%BD%D0%B0%D0%BB%D0%B8%D0%B7_%D1%8D%D1%84%D1%84%D0%B5%D0%BA%D1%82%D0%B8%D0%B2%D0%BD%D0%BE%D1%81%D1%82%D0%B8.pdf|pdf]]. - **22.10.2024** - Программирование в распределённой памяти: обзор интерфейса передачи сообщений MPI [[https://templet.ssau.ru/wiki/_media/presentations/%D1%80%D0%B0%D1%81%D0%BF%D1%80%D0%B5%D0%B4%D0%B5%D0%BB%D1%91%D0%BD%D0%BD%D0%B0%D1%8F_%D0%BF%D0%B0%D0%BC%D1%8F%D1%82%D1%8C_mpi.pdf|pdf]] - **29.10.2024** - Разбор лекций Т.Маттсона - от Mod1: Introduction to parallel programming - до OpenMP Programming Model, слайд 42. - **5.10.24** - Разбор лекций Т.Маттсона - от OpenMP Programming Model до слайда 79. Про schedule clause см. [[https://templet.ssau.ru/wiki/_media/presentations/openmp_for.pdf| лекция 7]] - **12.11.24** - Разбор лекций Т.Маттсона - от Working with loops (слайд 80) до Data environment (слайд 104). - **19.11.24** - Разбор лекций Т.Маттсона - от Data environment (слайд 104) до OpenMP memory model (слайд 150). - **26.11.24** - Разбор лекций Т.Маттсона - OpenMP memory model (слайды 150-166). - **03.12.24** - Разбор лекций Т.Маттсона - Data sharing: Threadprivate, Random number generators и подведение итогов, краткий пересказ изученного материала (слайды 168-200). ==== Практики ==== - **13.09.2024** - Распределение вариантов в 2 п/г группы 6402, занятие 1; распределение вариантов во 2 п/г группе 6403, занятие 1. - **16.09.2024** - Распределение вариантов во 2 п/г группы 6401, занятие 1. - **20.09.2024** - Распределение вариантов в 1 п/г группы 6402, занятие 1; распределение вариантов в 1 п/г группе 6403, занятие 1; распределение вариантов в 1 п/г группы 6401, занятие 1 (онлайн). - **30.09.2024** - Группа 6401, занятие 2. - **4.10.2024** - Группа 6402, занятие 2, группа 6403, занятие 2. - **7.10.2024** - Группа 6401, занятие 2. - **11.10.2024** - Группа 6402,6403. Занятие 3. - **14.10.2024** - Группа 6401, занятие 3. - **18.10.2024** - Группа 6402, 6403, занятие 3. - **21.10.2024** - Группа 6401, занятие 3.