Контрольные вопросы
Задания и упражнения
Задания для самостоятельной
работы
При
прохождении лабораторного практикума помимо выполнения упражнений под
руководством преподавателя каждый студент самостоятельно осуществляет решение
трех заданий разного уровня сложности:
-
Два из этих упражнений связаны с разработкой
параллельных программ для систем с общей и распределенной памятью и направлены
на практическое освоение технологий OpenMP и MPI соответственно. Задания для
такого вида упражнений берутся из разделов 4 и 5 учебных материалов курса.
-
Третье упражнение состоит в разработке параллельной
программы для одного из алгоритмов, рассмотренных в разделах 7-12 учебных
материалов курса.
Курсовой проект (зачетная работа)
Обучение в
рамках данного курса завершается подготовкой курсового проекта (зачетной
работой). В рамках данной работы студентами должен быть выполнен полный цикл
разработки параллельной программы достаточно высокого уровня сложности:
-
Определение постановки задачи (задания на
разработку),
-
Поиск литературы и освоение ряда известных алгоритмов
решения поставленной задачи,
-
Обоснованный выбор методов для дальнейшего
использования,
-
Разработку параллельных способов решения задачи в
соответствии с методикой, изложенной в разделе 6 учебных материалов курса,
-
Теоретический анализ эффективности разработанных
параллельных методов,
-
Программная реализация, проверка работоспособности,
проведение вычислительных экспериментов,
-
Анализ полученных результатов, сравнение
теоретических и экспериментальных показателей эффективности,
-
Оформление результатов выполнения работы.
Отчет о результатах выполнения работы
должен быть подготовлен в виде Web-документа, готового для
опубликования в Интернет. Данный Web-документ должен содержать следующие
разделы:
-
Постановка решаемой задачи,
-
Общее описание параллельного метода,
-
Общее описание схемы программной разработки,
-
Результаты теоретического анализа эффективности,
-
Текст программы (в упакованном формате для передачи
по протоколу ftp),
-
Описание выполненных вычислительных экспериментов,
-
Список использованной литературы.
При выполнении
работы обязательным является подготовка средств динамической визуализации
процесса параллельных вычислений (в режиме имитации расчетов или при реальном
многопроцессорном решении поставленных задач) - возможные примеры представления
результатов студенческих работ приведены на http://www.software.unn.ac.ru/ccam/?dir=17.
Выбор тем
зачетных заданий производится с учетом следующих рекомендаций:
-
Тема работы может быть предложена самим студентом и,
тем самым, может быть связана с направлением его учебно-научной, практической
или исследовательской деятельности (рекомендуемый вариант выбора темы работы),
-
Тема работы может состоять в усложнении или
укрупнении заданий, предложенных в разделах 7-12 учебных материалов курса
(например, реализовать все рассмотренные параллельные алгоритмы матричного
умножения),
-
Тема работы может состоять в изменении постановок
рассмотренных в учебном курсе задач (так, например, в матричных вычислениях
вместо плотных матриц могут рассматриваться разреженные матрицы или матрицы
специального типа),
-
Тема работы может состоять в расширении набора
рассматриваемых задач и методов их решения (задачи матричных вычислений и
обработки графов, уравнения в частных производных, цифровая обработка
сигналов, обработка изображений и др.).
Уровень сложности задания должен исходить из
необходимости 36 часов самостоятельной работы студента. Для выполнения работ
студенты могут быть объединены в группы из 2 человек.
Представление результатов работы производится
на практическом занятии в виде 10-15 минутной презентации.
Экзамен
Экзамен по
курсу проводится в устной форме. Вопросы и задачи экзамена формируются на основе
учебных материалов курса. Итоговая оценка выставляется с учетом всех результатов
обучения по курсу:
-
Участие в
лекционных занятиях – 10%,
-
Работа на
практических и лабораторных занятиях - 10%,
-
Выполнение
самостоятельных заданий - 20%,
-
Выполнение
зачетного задания - 40%,
-
Экзамен -
20%.