Остання редакція: 2025-03-16
Анотація
У дослідженні розглянуто розробку паралельного алгоритму матричного множення за допомогою Block Matrix. Розглянуто питання аналізу матричного множення за допомогою Block Matrix, обгрунтовано засоби розробки програмного модуля, розроблено діаграми класів програмного модуля, обгрунтовано вибір програмного засобу реалізації, створено програмну реалізацію та проведено тестування програмної реалізації модуля паралельного алгоритму матричного множення за допомогою Block Matrix. Реалізація програмного модуля дозволяє побачити різницю у часі обчислення великих матриць на центральному процесорі (CPU) та графічному процесорі (GPU) звичайним методом та методом Штрассена за допомогою паралельного виконання, використовуючи технологію CUDA. В процесі аналізу результатів визначено прискорення GPU над CPU, оптимальний розмір блоку для GPU обчислень, ефективність методу Штрассена та сформовано рекомендацію щодо оптимального методу для різних розмірів матриць. Одержані результати можливо використовувати у різноманітних алгоритмах та програмних засобах для розуміння роботи матричного множення за допомогою Block Matrix та збільшення їх швидкодії.
Ключові слова
Посилання
2.Block Matrix Multiplication. The Ohio State University – Ximera team. URL: https://ximera.osu.edu/la/LinearAlgebra/MAT-M-0023/main .
3.Matrix multiplication. Wikipedia. URL: https://en.wikipedia.org/wiki/Matrix_multiplication .
4.Complexity of matrix multiplication. Wikipedia. URL: https://en.wikipedia.org/wiki/Computational_complexity_of_matrix_multiplication .
5.Операції над матрицями і прямі методи. URL: http://om.univ.kiev.ua/users_upload/15/upload/file/cm_lecture_07.pdf .