GPU parallelization of the sequential matrix diagonalization algorithm and its application to high-dimensional data
Autor: | Server Kasap, Manuel Carcenac, Soydan Redif |
---|---|
Rok vydání: | 2017 |
Předmět: |
Polynomial
Covariance matrix Computer science Diagonalizable matrix MathematicsofComputing_NUMERICALANALYSIS 020206 networking & telecommunications 02 engineering and technology Parallel computing Covariance Polynomial matrix 020202 computer hardware & architecture Theoretical Computer Science Matrix (mathematics) CUDA Hardware and Architecture 0202 electrical engineering electronic engineering information engineering General-purpose computing on graphics processing units Algorithm Software Eigendecomposition of a matrix Information Systems |
Zdroj: | The Journal of Supercomputing. 73:3603-3634 |
ISSN: | 1573-0484 0920-8542 |
DOI: | 10.1007/s11227-017-1961-6 |
Popis: | This paper presents the parallelization on a GPU of the sequential matrix diagonalization (SMD) algorithm, a method for diagonalizing polynomial covariance matrices, which is the most recent technique for polynomial eigenvalue decomposition. We first parallelize with CUDA the calculation of the polynomial covariance matrix. Then, following a formal transformation of the polynomial matrix multiplication code—extensively used by SMD—we insert in this code the cublasDgemm function of CUBLAS library. Furthermore, a specialized cache memory system is implemented within the GPU to greatly limit the PC-to-GPU transfers of slices of polynomial matrices. The resulting SMD code can be applied efficiently over high-dimensional data. The proposed method is verified using sequences of images of airplanes with varying spatial orientation. The performance of the parallel codes for polynomial covariance matrix generation and SMD is evaluated and reveals speedups of up to 161 and 67, respectively, relative to sequential execution on a PC. |
Databáze: | OpenAIRE |
Externí odkaz: |