Алгоритм обчислення дводіагональної матриці ортогональним розкладанням на графічному процесорі

Автор(и)

  • Gennadii Malaschonok Малашонок Геннадій Іванович – професор, доктор фізико-математичних наук, завідувач кафедри мережних технологій факультету інформатики Національного університету «Києво-Могилянська академія», Ukraine
  • Serhii Sukharskyi Сухарський Сергій Сергійович – студент магістерської програми «Комп’ютерні науки» факультету інформатики Національного університету «Києво-Могилянська академія», Ukraine

DOI:

https://doi.org/10.18523/2617-3808.2021.4.10-15

Ключові слова:

графічний процесор, центральний процесор, матриця, вектор, Хаусхолдер, CUDA

Анотація

У роботі розглянуто та реалізовано алгоритм ортогонального розкладання матриці, який є першою частиною алгоритму SVD. Наведено реалізацію бідіагоналізації матриці та обчислення ортогональних множників методом Хаусхолдера в середовищі jCUDA на графічному процесорі, а також реалізовано алгоритм для центрального процесора для порівнянь. Проведено дослідження отриманих результатів, у яких експериментально визначалось пришвидшення обчислень за рахунок використання графічного процесора, порівняно з обчисленнями на центральному процесорі. Для матриці розміру 2048 використання відеокарти дає змогу пришвидшити обчислення у 53 рази.

Біографії авторів

Gennadii Malaschonok, Малашонок Геннадій Іванович – професор, доктор фізико-математичних наук, завідувач кафедри мережних технологій факультету інформатики Національного університету «Києво-Могилянська академія»

malaschonok@ukma.edu.ua

Serhii Sukharskyi, Сухарський Сергій Сергійович – студент магістерської програми «Комп’ютерні науки» факультету інформатики Національного університету «Києво-Могилянська академія»

s.sukharskyy@ukma.edu.ua

Посилання

CUBLAS documentation. Retrieved from https://docs.nvidia.com/ cuda/cublas/index.html.

Golub, G., & Kahan, W. (1965). Calculating the Singular Values and Pseudo-Inverse of a Matrix. SIAM J. Num. Anal., 2, 205–224.

JCuda project. Retrieved from http://jcuda.org/.

Lahabar, S., & Narayanan, P. J. Singular value decomposition on GPU using CUDA. 2009 IEEE International Symposium on Parallel & Distributed Processing, pp. 1–10. http://doi.org/10.1109/IPDPS.2009.5161058

Malashonok, H. I., & Savchenko S. O. (2019). Matrychni alhorytmy rozbyttia mnozhyn dlia rekomendatsiinykh system. NaUKMA. Persson. Householder Reflectors and Givens Rotations, MIT 18.335J / 6.337J Introduction to Numerical Methods. Retrieved from https://math.dartmouth.edu/~m116w17/Householder.pdf.

##submission.downloads##

Опубліковано

2021-12-10