Контрольная работа и лабораторные работы
Список задач, варианты заданий и методические указания
по выполнению контрольной работы и лабораторных работ находятся в электронном
виде на сайте дисциплины.
Тема
контрольной работы:
Параллельное программирование для
систем с общей памятью с использованием основ технологии OpenMP.
Темы
лабораторных работ:
1. Параллельное программирование для
графического процессора в среде NVidia CUDA или OpenCL.
2. Параллельное программирование для кластера
с использованием основ технологии MPI.
В работе нужно разработать алгоритм для
решения одной из задач, полный список которых формируется преподавателем и его
реализации в виде последовательного и параллельного варианта кода на языках С
или С++ (оба варианта желательно реализовать в одной программе). Необходимо
добиться совпадения результатов последовательного и параллельного вариантов
решения задачи для одинаковых исходных данных и обеспечить меньшие затраты
времени параллельного варианта по сравнению с последовательным, выяснив, при
каких условиях это оказывается возможным.
Необходимо
измерить временные затраты каждого варианта для разных наборов исходных данных,
разной степени распараллеливания, проанализированы и объяснены результаты
измерений.
Любая параллельная программа должна автоматически настраиваться на максимально доступное (или заданное при ее запуске) количество потоков/узлов/ядер/ветвей/…
Студент самостоятельно делает выбор, какую из задач
решать в контрольной работе и в каждой лабораторной работе.
Любые исходные данные должны задаваться в командной строке запуска программы и//или читаться из указанного в ней файла (файлов), т.е. не должны задаваться/определяться как константы в разрабатываемой программе. Для генерации исходных данных большого объема следует использовать утилиту genData.exe. Результаты вычислений должны выводиться в файл. Небольшие по объему результаты могут выводиться на консоль.
При решении задач, связанных с простыми числами,
следует использовать для их нахождения алгоритм "решето Эратосфена"
или более производительный, либо использовать в качестве исходных данных файлы
с заранее вычисленными простыми числами, например – с сайта http://primes.utm.edu/lists/small/millions/.
По результатам выполнения контрольной работы и лабораторных работ оформляются отчеты в электронном виде в формате Microsoft Word или PDF. Кроме стандартных разделов отчет должен содержать инструкцию по компиляции, сборке и запуску разработанной программы (программ). Код программы (программ) оформляется отдельно в формате текстового файла (файлов) и вместе с отчетом загружается студентом в соответствующий раздел личного кабинета в диспэйсе. Рекомендуется все файлы, содержащие результаты выполнения одной работы, упаковывать в один архив формата zip или rar. Загружать полные проекты любой IDE (например, Microsoft Visual Studio) категорически запрещается. Работы, оформленные не по указанным правилам к проверке не принимаются.