Темы зачетных заданий по курсам Парал- лельные численные методы и Технологии

advertisement
Темы зачетных заданий по курсам Параллельные численные методы и Технологии
параллельного программирования
Во всех заданиях предполагается:
1) выполнение последовательной реализации,
2) разработка параллельных версий алгоритмов с использованием четырех
технологий OpenMP, Intel Cilk Plus, TBB, CUDA или OpenCL,
3) встроенное в последовательную версию подтверждение корректности
результатов на модельной задаче,
4) подтверждение корректности полученных результатов сравнением с
последовательной версией,
5) проведение вычислительных экспериментов для анализа эффективности и масштабируемости.
6) написание отчета.
1. Реализовать генератор равномерного распределения. Провести эксперименты – оценить корректность и производительность генератора.
2. Реализовать генератор нормального распределения. Провести эксперименты – оценить корректность и производительность генератора.
3. Реализовать метод Монте-Карло и технику понижения дисперсии для
него – метод антитетических переменных (antithetic variates).
4. Реализовать метод Монте-Карло и технику понижения дисперсии для
него – метод выборки по значимости (importance sampling).
5. Реализовать метод Монте-Карло и технику понижения дисперсии для
него – метод контрольных переменных (control variate).
6. Реализовать алгоритм БПФ при размере входного сигнала, являющимся степенью двойки.
7. Реализовать «in-place» алгоритм БПФ без использования перестановки
элементов массива для размера входного сигнала, являющегося степенью двойки.
8. Реализовать алгоритм БПФ на общий случай размера входного сигнала
[6].
9. Реализовать алгоритм умножения разреженных матриц. Формат хранения координатный.
10. Реализовать алгоритм умножения разреженных матриц. Формат хранения строковый (CRS).
2
1. Вычисление простых чисел
11. Реализовать алгоритм умножения разреженных матриц. Формат хранения столбцовый (CCS).
12. Реализовать алгоритм Густавсона для умножения разреженных матриц.
13. Реализовать метод прогонки для решения задачи кубической сплайнинтерполяции.
14. Реализовать метод встречной прогонки для решения стационарного
уравнения теплопроводности.
15. Реализовать метод блочной прогонки для решения задачи построения
квадратичного сплайна.
16. Реализовать метод циклической редукции для решения динамической
задачи теплопроводности. Использовать схему Кранка-Николсона.
17. Реализовать метод циклической редукции для решения динамической
задачи теплопроводности. Использовать чисто неявную разностную
схему.
18. Реализовать блочный алгоритм решения системы линейных уравнений
с треугольной матрицей и несколькими правыми частями.
19. Реализовать блочное LU-разложение для квадратной матрицы.
20. Реализовать блочное разложение Холецкого для симметричной положительно определенной матрицы.
21. Реализовать явную разностную схему решения уравнения колебаний
мембраны.
22. Реализовать метод верхней релаксации для решения задачи Дирихле
для уравнения Пуассона (волновая схема).
23. Реализовать побайтовую восходящую сортировку для типа double в
общем случае (числа могут быть как положительные, так и отрицательные). Оценить эффективность реализации для разных типов последовательностей чисел.
24. Реализовать побайтовую восходящую сортировку для типов int,
unsigned int, float.
25. Реализовать побитовую восходящую сортировку для типов int, unsigned
int, float, double.
26. Реализовать метод сопряженных градиентов для решения СЛАУ с разреженной матрицей.
27. Реализовать метод верхней релаксации для решения СЛАУ с разреженной матрицей. В параллельной реализации построить модификацию по аналогии с методом Якоби.
1. Литература
1.
Василенко О.Н. Теоретико-числовые алгоритмы в криптографии. 2003.
– М.: МЦНМО, 2003.Стр. 78-83.
2.
Кнут Д. Искусство программирования. – М.: Вильямс, 2007. Т.2, с.
465-468.
3.
Черемушкин А.В. Лекции по арифметическим алгоритмам в криптографии. – М.: МЦНМО, 2002. Стр. 77-80.
4.
Вержбицкий В.М. Численные методы: математический анализ и обыкновенные дифференциальные уравнения. – М.: Высшая школа, 2001. –
382 с.
5.
Бахвалов Н.С., Жидков Н.П., Кобельков Г.М. Численные методы. –
Бином. Лаборатория знаний, 2008. – 640 c.
6.
Нуссбаумер Г. Быстрое преобразование Фурье и алгоритмы вычисления сверток: Пер. с англ. - М.: Радио и связь, 1985. - 248 с.
Download