Developing a New Storage Format and a Warp-Based SpMV Kernel for Configuration Interaction Sparse Matrices on the GPU
Sparse matrix-vector multiplication (SpMV) can be used to solve diverse-scaled linear systems and eigenvalue problems that exist in numerous, and varying scientific applications. One of the scientific applications that SpMV is involved in is known as Configuration Interaction (CI). CI is a linear me...
Main Authors: | , , |
---|---|
Format: | Article |
Language: | English |
Published: |
MDPI AG
2018-08-01
|
Series: | Computation |
Subjects: | |
Online Access: | http://www.mdpi.com/2079-3197/6/3/45 |
_version_ | 1819178722811445248 |
---|---|
author | Mohammed Mahmoud Mark Hoffmann Hassan Reza |
author_facet | Mohammed Mahmoud Mark Hoffmann Hassan Reza |
author_sort | Mohammed Mahmoud |
collection | DOAJ |
description | Sparse matrix-vector multiplication (SpMV) can be used to solve diverse-scaled linear systems and eigenvalue problems that exist in numerous, and varying scientific applications. One of the scientific applications that SpMV is involved in is known as Configuration Interaction (CI). CI is a linear method for solving the nonrelativistic Schrödinger equation for quantum chemical multi-electron systems, and it can deal with the ground state as well as multiple excited states. In this paper, we have developed a hybrid approach in order to deal with CI sparse matrices. The proposed model includes a newly-developed hybrid format for storing CI sparse matrices on the Graphics Processing Unit (GPU). In addition to the new developed format, the proposed model includes the SpMV kernel for multiplying the CI matrix (proposed format) by a vector using the C language and the Compute Unified Device Architecture (CUDA) platform. The proposed SpMV kernel is a vector kernel that uses the warp approach. We have gauged the newly developed model in terms of two primary factors, memory usage and performance. Our proposed kernel was compared to the cuSPARSE library and the CSR5 (Compressed Sparse Row 5) format and already outperformed both. |
first_indexed | 2024-12-22T21:47:04Z |
format | Article |
id | doaj.art-6f50e42247c44c0bb7bdb58d71321391 |
institution | Directory Open Access Journal |
issn | 2079-3197 |
language | English |
last_indexed | 2024-12-22T21:47:04Z |
publishDate | 2018-08-01 |
publisher | MDPI AG |
record_format | Article |
series | Computation |
spelling | doaj.art-6f50e42247c44c0bb7bdb58d713213912022-12-21T18:11:27ZengMDPI AGComputation2079-31972018-08-01634510.3390/computation6030045computation6030045Developing a New Storage Format and a Warp-Based SpMV Kernel for Configuration Interaction Sparse Matrices on the GPUMohammed Mahmoud0Mark Hoffmann1Hassan Reza2Department of Computer Science, University of North Dakota, Grand Forks, ND 58202, USADepartment of Chemistry, University of North Dakota, Grand Forks, ND 58202, USADepartment of Computer Science, University of North Dakota, Grand Forks, ND 58202, USASparse matrix-vector multiplication (SpMV) can be used to solve diverse-scaled linear systems and eigenvalue problems that exist in numerous, and varying scientific applications. One of the scientific applications that SpMV is involved in is known as Configuration Interaction (CI). CI is a linear method for solving the nonrelativistic Schrödinger equation for quantum chemical multi-electron systems, and it can deal with the ground state as well as multiple excited states. In this paper, we have developed a hybrid approach in order to deal with CI sparse matrices. The proposed model includes a newly-developed hybrid format for storing CI sparse matrices on the Graphics Processing Unit (GPU). In addition to the new developed format, the proposed model includes the SpMV kernel for multiplying the CI matrix (proposed format) by a vector using the C language and the Compute Unified Device Architecture (CUDA) platform. The proposed SpMV kernel is a vector kernel that uses the warp approach. We have gauged the newly developed model in terms of two primary factors, memory usage and performance. Our proposed kernel was compared to the cuSPARSE library and the CSR5 (Compressed Sparse Row 5) format and already outperformed both.http://www.mdpi.com/2079-3197/6/3/45SpMVlinear systemCIGPUkernelCUDA |
spellingShingle | Mohammed Mahmoud Mark Hoffmann Hassan Reza Developing a New Storage Format and a Warp-Based SpMV Kernel for Configuration Interaction Sparse Matrices on the GPU Computation SpMV linear system CI GPU kernel CUDA |
title | Developing a New Storage Format and a Warp-Based SpMV Kernel for Configuration Interaction Sparse Matrices on the GPU |
title_full | Developing a New Storage Format and a Warp-Based SpMV Kernel for Configuration Interaction Sparse Matrices on the GPU |
title_fullStr | Developing a New Storage Format and a Warp-Based SpMV Kernel for Configuration Interaction Sparse Matrices on the GPU |
title_full_unstemmed | Developing a New Storage Format and a Warp-Based SpMV Kernel for Configuration Interaction Sparse Matrices on the GPU |
title_short | Developing a New Storage Format and a Warp-Based SpMV Kernel for Configuration Interaction Sparse Matrices on the GPU |
title_sort | developing a new storage format and a warp based spmv kernel for configuration interaction sparse matrices on the gpu |
topic | SpMV linear system CI GPU kernel CUDA |
url | http://www.mdpi.com/2079-3197/6/3/45 |
work_keys_str_mv | AT mohammedmahmoud developinganewstorageformatandawarpbasedspmvkernelforconfigurationinteractionsparsematricesonthegpu AT markhoffmann developinganewstorageformatandawarpbasedspmvkernelforconfigurationinteractionsparsematricesonthegpu AT hassanreza developinganewstorageformatandawarpbasedspmvkernelforconfigurationinteractionsparsematricesonthegpu |