A GPU-based singular value decomposition algorithm

S.S. Sukharskyi

Abstract


In this research paper we present an implementation of a singular value decomposition algorithm designed specifically for the graphics processing unit. It consists of two parts: orthogonal matrix decomposition and matrix diagonalization. Presented an implementation of bidiagonalization algorithm where we calculate the main bidiagonal matrix and two orthogonal multipliers using a series of House- holder transformations, as well as diagonalization algorithm with the help of Givens rotation matrices. Bothe these parts are implemented in jCUDA environment. Experiments have been conducted, the results of which have been thoroughly investigated on the matter of time consumption and calculations error. We’ve also compared our implementation with alternatives both on central and graphic processors.

Prombles in programming 2023; 1: 30-37



Keywords


singular value decomposition; Householder algorithm; Givens algorithm; GPU computations; jCUDA

References


Malashonok H. I., Sukharskyi S. S. A GPU-based orthogonal matrix factorization algorithm that produces a two-diagonal shape. NaUKMA. Computer Science. 2021. retrieved from http://nrpcomp. ukma.edu.ua/article/view/246581.

CrossRef

Malashonok H. I., Semylitko М.Y. Parallel SVD algorithm for a three-diagonal matrix on a video card using the Nvidia CUDA architecture. NaUKMA. Computer Sci- ence. 2021. retrieved from http://nrpcomp. ukma.edu.ua/article/view/246582.

CrossRef

Malashonok H. I., Savchenko S. O., "Matrychni alhorytmy rozbyttia mnozhyn dlia rekomendatsiinykh system". NaUKMA, 2019.

S. Lahabar and P. J. Narayanan, «Singular valuedecompositiononGPUusingCUDA,» 2009 IEEE International Symposium on Parallel & Distributed Processing, 2009, pp. 1-10, retrieved from

CrossRef

Persson, “Householder Reflectors and Givens Rotations”, MIT 18.335J / 6.337J Introduction to Numerical Methods. retrieved from https://math.dartmouth. edu/~m116w17/Householder.pdf.

Cornell University, "Numerical linear algebra and matrix factorizations", retrieved from http://pi.math.cornell. edu/~web6140/TopTenAlgorithms/House-holder.html.

Computer Algebra System MathPartner retrieved from http://mathpar.ukma.edu. ua/.

Malaschonok, G.I., Sidko, A.A. Supercomputer Environment for Recursive Matrix Algorithms. Program Comput Soft 48, 90–101 (2022). CrossRef

News resource Nauka.ua retrieved from https://nauka.ua/news/superkompyuter-vpershe-dosyag-efektivnosti-v-odin-ekza- flops.

CUDA API SVD. retrieved from https://github.com/NVIDIA/ CUDALibrarySamples/blob/master/cuSOLVER/gesvdj/cusolver_gesvdj_ example.cu .




DOI: https://doi.org/10.15407/pp2023.01.030

Refbacks

  • There are currently no refbacks.