Напиши РПД для параллельное программирование

  
РАБОЧАЯ ПРОГРАММА ДИ СЦИПЛИНЫ  
1. НАИМЕНОВАНИЕ ДИСЦ ИПЛИНЫ  
Параллельное программирование и суперкомпьютеры  
2. УРОВЕНЬ ВЫСШЕГО О БРАЗОВАНИЯ  
 Подготовка научно -педагогических кадров в аспирантуре.  
3. НАПРАВЛЕНИЕ ПОДГО ТОВКИ, НАПРАВЛЕННОСТ Ь (ПРОФИЛЬ) ПОДГОТОВ КИ 
Направление подготовки – «Информатика и вычислительная техника» (09.06.01)Направленность (профиль) – 
«Математическое моделирование, числе нные методы и комплексы программ» (05.13.18)  
4. МЕСТО ДИСЦИПЛИНЫ В С ТРУКТУРЕ ОСНОВНОЙ ОБ Р АЗОВАТЕЛЬНОЙ ПРОГР А ММЫ  
Дисциплина входит в обязательную часть образовательн ой программы  
 
5.АННОТАЦИЯ  
Данный курс ориентирован на получение базовых знаний и практических навыков в области построения и анализа параллельных алгоритмов 
решения вычислительно -трудоемких задач . 
 
6.ПЕРЕЧЕНЬ ПЛАНИРУЕМЫХ  РЕЗУ ЛЬТАТОВ ОБУЧЕНИЯ  
Дисциплина участвует в формировании следующих компетенцийобразовательной программы:  
 
Формируемые компетенции  Планируемые результаты обучения  
Владением методологией теоретических и  кспериментальных 
исследований в области профессиональной деятельности  З1 (ОПК -1) ЗНАТЬ:  
современные математические методы, применяющиеся для решения задач в 
области естественных наук,  кономики, социологии и информационно -
коммуникационных технологий   (ОПК -1) 
 У1 (ОПК -1) УМЕТЬ:  
применять современные методы постановки и анализа задач в области 
математики и информатики  
В1 (ОПК -1) ВЛАДЕТЬ:  
навыками оптимальн ого выбора современных методов и средств 
постановки и анализа задач в области математики и информатики  
 
Cпособность к реализации различных математических алгоритмов в 
виде программных комплексов, ориентированных на современную 
вычислительную технику  
(ПК-4) 
 ЗНАТЬ : 
современные методы реализации различных математических алгоритмов в 
виде программных комплексов, особенности современных вычислительных 
комплексов  
Код З1 (ПК -4) 
УМЕТЬ:  
применять современные методы  реализации различных математических 
алгоритм ов в виде программных комплексов  с учетом  особенностей  
современных вычислительных комплексов  
Код У1 (ПК -4) 
ВЛАДЕТЬ:  
навыками оптимального выбора и создания новых современных методов 
реализации математических алгоритмов в виде программных комплексов, 
учитывающих особенности современных вычислительных комплексов  
Код В1 (ПК -4) 
Владение современными методами построения и анализа 
математических моделей, возникающих при решении 
естественнонаучных задач, а также методами разработки и 
реализации алгоритмов их решения на основе фундаментальных 
знаний в области математики и информатики  
(ПК-1) ЗНАТЬ : 
современные методы построения и анализа математических моделей, 
возникающих при решении естественнонаучных задач, а также 
современные методы разработки и реализаци и алгоритмов их 
решения  
Код З1 (ПК -1) 
УМЕТЬ:  
применять современные методы построения и анализа математических 
моделей, возникающих при решении естественнонаучных задач, а 
также современные методы разработки и реализации алгоритмов их 
решения  
Код У1 (ПК -1) 
ВЛАДЕТЬ:  
навыками оптимального выбора современных методов  построения и  анализа математических моделей, возникающих при решении 
естественнонаучных задач, а также  современных методов  разработки 
и реализации алгоритмов их решения  
Код В1 (ПК -1) 
 
 
Оценочные средства для промежуточной аттестации приведены в Приложении.  
6. ОБЪЕМ ДИСЦИПЛИНЫ  
Объем дисциплины составляет 3 зачетные единицы, всего 108 часа.  
68 часа составляет контактная работа с преподавателем – 32 часов занятий лекционного типа, 32  часов занятий семинарского типа 
(семинары, научно -практические занятия,  лабораторные работы и т.п.), 0  часов индивидуальных консульт аций, 0  часа групповых 
консультаций, 0  часов мероприятий т екущего контроля успеваемости, 4  часа промежуточной аттестации.  
40 часа составляет самостоятельная работа учащегося.  
7. ВХОДНЫЕ ТРЕБОВАНИЯ Д ЛЯ ОСВОЕНИЯ ДИСЦИПЛИ НЫ 
Для освоения данной дисциплины слушатели должны иметь базовую подготовку в области программирования, технологий параллельного  
программирования, архитектуры ко мпьютеров и методов решения задач.  
8. ОБР АЗОВАТЕЛЬНЫЕ ТЕХН ОЛОГИИ  
В процессе обучения используются пакеты прикладных программ MATHEMATICA , язык программирования Python , пакет 
прикладных программ Lapack , методы распараллеливания OpenMP  и MPI. 
9. СОДЕРЖАНИЕ ДИСЦИПЛИНЫ  
Наименование и 
краткое содержание 
разделов и тем 
дисциплины,  Всего  
(часы ) В том числе  
Контактная работа (работа во взаимодействии с 
преподавателем), часы  
из них  Самостоятельная работа 
учащегося, часы  
из них   форма промежуточной 
аттестации по 
дисциплине  
Занятия лекционного  
типа  
Занятия 
семинарского типа  
Групповые 
консультации  
Индивидуальные 
консультации  Учебные занятия, 
направленные на 
проведение 
текущего контроля 
успеваемости: 
коллоквиумы, 
практические 
контрольные 
занятия и др.  Всего  Выполнение 
домашних 
заданий  Подготовка 
рефератов 
и т.п..  Всего   1 Введен ие в 
предмет  
Области применения 
многопроцессорных 
систем, решаемые на 
МВС задачи. Ускорение и 
 ффективность 
параллельных 
алгоритмов. Некоторые 
принципы машины Фон 
Неймана. Параллельная 
программа как ансамбль 
взаимодействующих 
последовательных 
процессов. Сл ожение 
длинных 
чисел.Параллельные 
архитектуры. 
Транспьютеры. Проблема 
когерентности к ш. 
Метод сдваивания и 
модифицированный 
метод сдваивания. 
Преобразование 
параллельного алгоритма 
в «наилучший» 
последовательный  
 
 8 
4 
4 
 
  8     2 Базовые 
параллельные методы  
Модели выполнения 
параллельной программы 
на распределенной и на 
общей памяти. Канал 
передачи данных, его 
свойства. Распределенная 
память (двусторонние 
обмены). Виды обменов. 
Синхронные, 
асинхронные 
небуферизованные и 
буферизованные. Общая 
память (UM A), проблема 
доступа к общим 
переменным. Семафоры, 
P и V функции, 
критические секции, 
мониторы. Барьерная 
синхронизация. 
Внутренний параллелизм. 
Геометрический 
параллелизм. Диффузная 
балансировка. 
Коллективное решение. 
Конвейерный 
параллелизм.  
 16 
8 
8 
 
  16     3 Сортировка  
Построение  талонного 
последовательного 
алгоритма сортировки. 
Сети сортировки. Четно -
нечетные перестановки. 
Четно -нечетное слияние 
Б тчера.  
 
4 Генерация 
псевдослучайных чисел  
Требования к 
генераторам 
псевдослучайных чисел 
для МВС. Линейно -
конгру нтные 
генераторы. M -
последовательности. 
Тестирование 
генераторов.  
 
 16 
8 
8 
 
  16     5 Декомпозиция 
сеточных графов  
Декомпозиция графов. 
Критерии декомпозиции. 
Иерархические 
алгоритмы. Локальное 
уточнение. Спектральная 
бисекция. Инкрементный  
алгоритм.  
 
6 Динамическая 
балансировка загрузки  
Диффузная балансировка. 
Адаптивное 
интегрирование. 
Cерверный параллелизм.  
 
 20 
10 
10 
 
  20    
7 Визуализация и 
ввод-вывод сеточных 
данных  
Online или Offline 
визуализация: плюсы и 
минусы.Клиент -
серверная технология. 
Распределённый ввод -
вывод. Огрубление 
данных с 
контролируемой 
точностью.  
 
 4 
2 
2 
 
  4       
 
 
 
      
Промежуточная 
аттестация – устный 
экзамен  44 
4 
 
 
  4   40 
Итого  108                               68                                40 
10.УЧЕБНО -МЕТОДИЧЕСКИЕ МАТЕРИА ЛЫ ДЛЯ САМОСТОЯТЕЛЬН ОЙ Р АБОТЫ УЧАЩИХСЯ  
Самостоятельная работа учащихся состоит в изучении лекционного материала, учебно -методической литературы, подготовки к 
практическим заданиям текущего контроля и промежуточной аттестации.  
11.РЕСУРСНОЕ ОБЕСПЕЧЕНИ Е 
1. Якобовский М.В. Введение в параллельные методы решения задач. М.: Издательство Московского университете, 2012 г. — 320 с.  
2. Воеводин В.В., Воеводин Вл.В. Параллельные вычисления. - СПб.: БХВ -Петербург, 2002. - 608 с.  
3. Грегори Р. Эндрюс - Основы многопоточного, параллельного и распределенного программирования. "Вильямс ", 2003  
4. Э. Дейкстра. Взаимодействие последовательных процессов.  
http://khpi -iip.mipk.kharkiv.edu/library/extent/dijkstra/ewd123/index.html  
5. Дональд Э. Кнут Искусство программирования. Том 3. Сортировка и поиск  
6. Роберт Седжвик - Фундаментальные алгоритмы на C. Части 1 - 5. Анализ. Структуры данных. Сортировка. Поиск. Алгоритмы на графах  
7. Материалы информационно -аналитического центра Parallel.ru  
Материально -техническая база  
Для обеспечения выполнения практических заданий по кур су «Суперкомпьютеры и параллельная обработка данных»используется 
удаленный доступ на суперкомпьютерные системы.  
  12. ЯЗЫК ПРЕПОДАВАНИЯ  
Русский  
13. Р АЗР АБОТЧИК ПРОГР АММ Ы, ПРЕПОДАВАТЕЛИ  
д.ф.- м.н., член -корреспондент РАН Якобовский Михаил Владимирович   Приложение  
Оценочные средства для промежуточной аттестации по дисциплине «Математическое обеспечение квантовых компьютеров»  
Промежуточная аттестация состоит из двух  тапов – выполнения практического контрольного задания, проверяющего приобретенные 
учащимся умения и навыки, и индивидуального собеседования, проверяющего приобретенные знания.  
Средства для оценивания планируемых результатов обучения, критерии и показатели оценивания приведены ниже . 
РЕЗУЛЬ ТАТ 
ОБУЧЕНИЯ  КРИТЕРИИ и ПОКАЗАТЕЛИ ОЦЕНИВАНИЯ РЕЗУЛЬТАТА ОБУЧЕНИЯ  
из соответствующих карт компетенций  ОЦЕНОЧНЫЕ 
СРЕДСТВА  
 1 2 3 4 5  
 
 Неудовлетв
орительно  Неудовлетворительн
о  Удовлетворительно  Хорошо  Отлично   
ЗНАТЬ:  
современные 
математические 
методы,  
применяющиеся 
для решения 
задач в области 
естественных 
наук, 
 кономики, 
социологии и 
информационно
-
коммуникацион
ных технологий  
Код З1 (ОПК -1) Отсутствие 
знаний  Фрагментарные 
представления о 
современных 
математических 
методах, 
применяющихся для 
решения зад ач в области 
естественных наук, 
 кономики, социологии 
и информационно -
коммуникационных 
технологий  
 В целом 
сформированные, но 
неполные знания о 
современных 
математических 
методах, 
применяющихся для 
решения задач в области 
естественных наук, 
 кономики, соци ологии 
и информационно -
коммуника -ционных 
технологий  Сформированные, но 
содержащие 
отдельные пробелы 
знания о современных 
математических 
методах, 
применяющихся для 
решения задач в 
области естественных 
наук,  кономики, 
социологии и 
информационно -
коммуника -ционных 
технологий  Сформированные 
систематические  
знания о 
современных 
математических 
методах, 
применяющихся для 
решения задач в 
области естественных 
наук,  кономики, 
социологии и 
информационно -
коммуникационных 
технологий  Устный  кзамен  
УМЕТЬ:  
применять 
современные 
методы 
постановки и 
анализа задач в Отсутствие 
умений  
 
 
 
 Фрагментарные умения 
применять современные 
методы постановки и 
анализа задач в области 
математики и 
информатики  В целом успешное, но 
не систематическое 
умение применять 
современные методы 
постановки и анализа 
задач в области Успешное, но 
содержащее отдельные 
пробелы умение 
применять 
современные методы 
постановки и анализа Сформированное 
умение применять 
современные методы 
постановки и анализа 
задач в области 
математики и Устный  кзамен   области 
математики и 
информатики  
Код У1 (ОПК -1)  
 математики и 
информатики  задач в области 
математики и 
информатики  информатики  
ВЛАДЕТЬ:  
навыками 
оптимального 
выбора 
современных 
методов и 
средств 
постановки и 
анализа задач в 
области 
математики и 
информатики  
Код В1 (ОПК -1) Отсутствие 
навыков  
 
 
 
 
 
 Фрагментарное 
владение навыками 
оптимального выбора 
современных методов и 
средств постановки и 
анализа задач в области 
математики и 
информатики  В целом успешное, но 
не полное владение 
навыками оптимального 
выбора современных 
методов и средств 
постановки и анализа 
задач в области 
математики и 
информатики  Успешное, но 
содержащее отдельные 
пробелы владение 
навыками 
оптимального выбора 
современных методов 
и средств постановки и 
анализа зада ч в 
области математики и 
информатики  Сформированное 
владение навыками 
оптимального выбора 
современных методов 
и средств постановки 
и анализа задач в 
области математики и 
информатики  реферат  
ЗНАТЬ : 
современные 
методы 
реализации 
различных 
математических 
алгоритмов в 
виде 
программных 
комплексов, 
особенности 
современных 
вычислительны
х комплексов  
Код З1 (ПК -4) Отсутствие 
знаний  Фрагментарные 
представления 
осовременны х методах 
реализации различных 
математических 
алгоритмов в виде 
программных 
комплексов, 
особенност ях 
современных 
вычислительных 
комплексов  
 В целом 
сформированные, но 
неполные знания 
осовременны х методах 
реализации различных 
математических 
алгоритмов в виде 
программных 
комплексов, 
особенност ях 
современных 
вычислительных 
комплексов  Сформированные, но 
содержащие 
отдельные пробелы 
знания осовременны х 
методах реализации 
различных 
математических 
алгоритмов в в иде 
программных 
комплексов, 
особенност ях 
современных 
вычислительных 
комплексов  Сформированные 
систематические  
знания осовременны х 
методах реализации 
различных 
математических 
алгоритмов в виде 
программных 
комплексов, 
особенност ях 
современных 
вычислительных 
комплексов  Устный  кзамен  
УМЕТЬ:  
применять 
современные 
методы  
реализации Отсутствие 
умений  
 
 
 Фрагментарные 
уменияприменять 
современные методы  
реализации различных 
математических В целом успешное, но 
не систематическое 
умениеприменять 
современные методы  
реализации различ ных Успешное, но 
содержащее отдельные 
пробелы 
умениеприменять 
современные методы  Сформированное 
умение применять 
современные методы  
реализации 
различных отчет   различных 
математических 
алгоритмов в 
виде 
программных 
комплексов  с 
учетом  
особенностей  
современных 
вычислительны
х комплексов  
Код У1 (ПК -4) алгоритмов в виде 
программных 
комплексов  с учетом  
особенностей  
современных 
вычислительных 
комплексов  математических 
алгоритмов в виде 
программных 
комплексов  с учетом  
особенностей  
современных 
вычислительных 
комплексов  реализации различных 
математических 
алгоритмов в виде 
программных 
комплексов  с учетом  
особенностей  
современных 
вычислительных 
комплексов  математических 
алгоритмов в виде 
программных 
комплексов  с учетом  
особенностей  
современных 
вычислительных 
комплексов  
ВЛАДЕТЬ:  
навыками 
оптимального 
выбора и 
создания новых 
современных 
методов 
реализации 
математических 
алгоритмов в 
виде 
программных 
комплексов, 
учитывающих 
особенности 
современных 
вычислительны
х комплексов  
Код В1 (ПК -4) Отсутствие 
навыков  
 
 
 
 
 
 Фрагментарное 
владение навыками 
оптимального выбора и 
создания новых 
современных методов 
реализации 
математических 
алгоритмов в виде 
программных 
комплексов, 
учитывающих 
особенности 
современных 
вычислительных 
комплексов  В целом успешное, но 
не полное владение 
навыками оптимального 
выбора и создания 
новых современных 
методов реализации 
математических 
алгоритмов в виде 
программных 
комплексов, 
учитывающих 
особенности 
современных 
вычислительных 
комплексов  Успешное, но 
содержащее отдельные 
пробелывладение 
навыками 
оптимального выбора 
и создания новых 
современных методов 
реализации 
математических 
алгоритмов в виде 
программных 
комплексов, 
учитывающих 
особенности 
современных 
вычислительных 
комплексов  
 Сформированное 
владение навыками 
оптимального выбора 
и создания новых 
современных методов 
реализации 
математических 
алгоритмов в виде 
программных 
комплексов, 
учитывающих 
особенности 
современных 
вычислительных 
комплексов  
 отчет  
ЗНАТЬ : 
современные 
методы 
построения и 
анализа Отсутствие 
знаний  Фрагментарные 
представления о  
современных методах 
построения и анализа 
математических 
моделей, В целом 
сформированные, но 
неполные знания о  
современных методах 
построения и анализа 
математических Сформированные, но 
содержащие 
отдельные пробелы 
знания о  
современных 
методах построения Сформированные 
систематические  
знания о  
современных 
методах построения 
и анализа Устный  кзамен   математически
х моделей, 
возникающих 
при решении 
естественнона
учных задач, а 
также 
современные 
методы 
разработки и 
реализации 
алгоритмов их 
решения  
Код З1 (ПК -1) возникающих при 
решении 
естественнонаучных 
задач, а также 
современных методах 
разработки и 
реализации 
алгоритмов их 
решения  
 моделей, 
возникающих при 
решении 
естественнонаучных 
задач, а также 
современных методах 
разработки и 
реализации 
алгоритмов их 
решения  и анализа 
математических 
моделей, 
возникающих при 
решении 
естественнонаучных 
задач, а также 
современных 
методах разработки 
и реализации 
алгоритмов их 
решения  математических 
моделей, 
возникающих при 
решении 
естественнонаучны
х задач, а также 
современных 
методах разработки 
и реализации 
алгоритмов их 
решения  
УМЕТЬ:  
применять 
современные 
методы 
построения и 
анализа 
математически
х моделей, 
возникающих 
при решении 
естественнона
учных задач, а 
также 
современные м
етоды 
разработки и 
реализации 
алгоритмов их 
решения  
Код У1 (ПК -1) Отсутствие 
умений  
 
 
 
 
 
 Фрагментарные умения  
применять современные 
методы построения и 
анализа 
математических 
моделей, 
возникающих при 
решении 
естественнонаучных 
задач, а также 
современные методы 
разработки и 
реализации 
алгоритмов их 
решения  В целом успешное, но 
не систематическое 
умение  применять 
современные методы 
построения и анализа 
математических 
моделей, 
возникающих при 
решении 
естественнонаучных 
задач, а также 
современные методы 
разработки и 
реализации 
алгоритмов их 
решения  Успешное, но 
содержащее отдельные 
пробелы умение  
применять 
современные методы 
построения и 
анализа 
математических 
моделей, 
возникающих при 
решении 
естественнонаучных 
задач, а также 
современные методы 
разработки и 
реализации 
алгоритмов их 
решения  Сформированное 
умение применять 
современные методы 
построения и 
анализа 
математических 
моделей, 
возникающих при 
решении 
естественнонаучны
х задач, а также 
современные методы 
разработки и 
реализации 
алгоритмов их 
решения  Отчет   ВЛАДЕТЬ:  
навыками 
оптимального 
выбора 
современных 
методов  
построения и 
анализа 
математически
х моделей, 
возникающих 
при решении 
естественнона
учных задач, а 
также  
современных м
етодов  
разработки и 
реализации 
алгоритмов их 
решения  
Код В1 (ПК -1) Отсутствие 
навыков  
 
 
 
 
 
 Фрагментарное 
владение навыками 
оптимального выбора 
современных методов  
построения и анализа 
математических 
моделей, 
возникающих при 
решении 
естественнонаучных 
задач, а также  
современных методов  
разработки и 
реализации 
алгоритмов их 
решения  В целом успешное, но 
не полное владение 
навыками оптимального 
выбора современных 
методов  построения и 
анализа 
математических 
моделей, 
возникающих при 
решении 
естественнонаучных 
задач, а также  
современных методов  
разработки и 
реализации 
алгоритмов их 
решения  Успешное, но 
содержащее отдельные 
пробелывладение 
навыками 
оптимального выбора 
современных методов  
построения и 
анализа 
математических 
моделей, 
возникающих при 
решении 
естественнонаучных 
задач, а также  
современных методов  
разработки и 
реализации 
алгоритмов их 
решения  Сформированное 
владение навыками 
оптимального выбора 
современных методов 
построения и 
анализа 
математических 
моделей, 
возникающих при 
решении 
естественнонаучны
х задач, а также  
современных методо
в разработки и 
реализации 
алгоритмов их 
решения  отчет  
 
Фонды оценочных средств  
Примерные практические контрольные задания для текущего контроля успеваемости.  
Список вопросов  
1. Виды многопроцессорных систем.  
2. Внутренний параллелизм, степень параллелизма. Закон Амдаля.  
3. Метод геометрического параллелизма.  
4. Метод конвейерного параллелизма.  
5. Метод коллективного решения.  
6. Метод сдваивания.  
7. Ускорение и  ффективность параллельных алгоритмов.   8. Статическая балансировка загрузки  процессоров . 
9. Динамическая балансировка загрузки  процессоров . 
10. Метод диффузной балансировки загрузки.  
11. Методы синхронизации последовательных процессов.  
12. Каналы межпроцессорной  связи.  
13. Методы передачи сообщений.  
14. Недетерминированность параллельных программ.  
15. Взаимная блокировка последовательных процессов.  
16. Разделяемые ресурсы. Семафор, критическая секция, монитор.  
17. Легковесные процессы (треды , нити ). 
18. Когерентность кеш памяти.  
19. Параллельные алгоритмы сортировки данных. Сети сортировки. Сеть четно -нечетной  перестановки. Сеть нечетно -четного слияния  
Бетчера.  
20. Параллельные алгоритмы интегрирования одномерных функций.  
21. Декомпозиция сеток. Критерии и методы.  
22. Параллельные алгоритмы генерации пс евдослучайных чисел. Линейные конгру нтные генераторы. М -последовательности.  
23. Визуализация и ввод -вывод сеточных данных большого объёма.  
 
Задачи к экзамену по курсу  
1. Построение сети сортировки -слияния на основе метода Бетчера.  
2. Параллельный алгоритм сложения  n-разрядных целых чисел.  
3. Параллельный алгоритм определения суммы конечного ряда.  
4. Построение барьера на основе синхронных обменов.  
5. Построение барьера на основе семафоров.