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

Автор(и)

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

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

Посилання

  1. CUBLAS documentation. Retrieved from https://docs.nvidia.com/ cuda/cublas/index.html.
  2. Golub, G., & Kahan, W. (1965). Calculating the Singular Values and Pseudo-Inverse of a Matrix. SIAM J. Num. Anal., 2, 205–224.
  3. JCuda project. Retrieved from http://jcuda.org/.
  4. 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
  5. 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

Як цитувати

[1]
G. Malaschonok і S. Sukharskyi, «Алгоритм обчислення дводіагональної матриці ортогональним розкладанням на графічному процесорі», NRPCOMP, т. 4, с. 10–15, Груд 2021.