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...

Full description

Bibliographic Details
Main Authors: Mohammed Mahmoud, Mark Hoffmann, Hassan Reza
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