# Numerically efficient way to compute sparse-matrix arithmetic on GPU?

Can anyone tell me some very good/efficient numerial algorthims for GPU/CUDA to compute multiplication/ between sparse matrices (its good if you can recommend me some research papers)?

I googled some papers on sparse vectors, but it looks like they are more interested in the operations involves sparse matrix and dense vectors, but what I am dealing with is some math operations involves only sparse matrices and sparse vectors.

Thanks!

• In practice sparse matrix times dense vector multiplication is heavily used in iterative methods for the solution of sparse systems of equations. In these algorithms the vector almost always becomes fully dense within a few iterations, so there's no point in worrying about multiplying by sparse vectors. – Brian Borchers Nov 4 '13 at 22:49

Nvidia's cuSPARSE library implements the functions in the standard sparse blas library, but the sparse blas doesn't include a sparse matrix times sparse vector multiply. However, cuSPARSE also has a sparse matrix times sparse matrix multiplication routine that goes beyond the sparse blas.

• Your sparse vector can be thought of as a sparse matrix with one column, so the sparse matrix times sparse matrix routine will do what you need. – Brian Borchers Nov 1 '13 at 2:28