Массивно-параллельные вычислительные ядра для графических процессоров: семейство алгоритмов треугольного разложения блочных разреженных матрицдипломная работа (Бакалавр)
Аннотация:Основная задача данной работы – исследование методов оптимальной реализации некоторых операций линейной алгебры плотных и разреженных матриц из пакета Flow Vision на графических процессорах при помощи технологии CUDA. Первая часть работы состоит из реализации ядер данных операций для графических процессоров, вторая часть - из анализа и оценки эффективности полученных ядер, а так же доказательства того, что более эффективно реализовать данные ядра невозможно.
Выпускная работа велась совместно с российской компанией «Тесис», разработавшей программный пакет Flow Vision для суперкомпьютерных вычислений в области моделирования течений жидкости и газа. На данный момент вычисления в пакете Flow Vison производится только на многоядерных центральных процессорах (или группе таких процессоров). Созданные в ходе данной выпускной работы ядра могут впоследствии быть использованы для переноса части вычислительных функций пакета Flow Vision с центральных процессоров на графические. Реализации данных операций на графических ускорителях планируется использовать совместно с уже существующими реализациями на центральном процессоре, а не вместо них, что накладывает определенные ограничения на создаваемые ядра.
Основным результатом данной работы является то, что ходе её было получено ускорение в 5-10 раз, если сравнивать аналоги реализуемых операций из пакета Flow Vision, запущенные на современных многоядерных центральных процессорах, со временем выполнения реализованных операций на современных видеокартах от компании NVidia.
Ещё один важный результат, полученный в ходе данной работы – значительное ускорение полученных ядер в сравнении с реализацией аналогичных операций в составе повсеместно используемых программных пакетов cuBlas и cuSparse.