Yes, I do want to multiply a sparse matrix into a vector ( r = B q ).
What I have done is copy the vector values to another vector so that my multiplication is now
which is now dense. I am using ZSBMV which is in BLAS but not I think in MagmaBlas.
I have two cases, one with about 60,000 entries which is running well on the CPU.
I have another case with 3,300,000 entries which I think would benefit from using Magma.
There seems to be no BLAS routine which does element wise vector-vector multiplication. ZSBMV can be used to achieve it.
http://stackoverflow.com/questions/7621 ... on-in-blas
was where I found the suggestion.
I cannot yet use the sparse routines in Magma 1.6.2, so this is an alternative.
Thanks for your help
P.S. It seems that CUDA 6.5 does have versions of SSBMV and DSBMV but not the complex versions:
- fletcher@fletcher-desktop:/usr/local/cuda-6.5/include$ grep sbmv *.h
cublas_api.h:CUBLASAPI cublasStatus_t CUBLASWINAPI cublasSsbmv_v2 (cublasHandle_t handle,
cublas_api.h:CUBLASAPI cublasStatus_t CUBLASWINAPI cublasDsbmv_v2 (cublasHandle_t handle,
cublas.h:void CUBLASWINAPI cublasSsbmv (char uplo, int n, int k, float alpha,
cublas.h:void CUBLASWINAPI cublasDsbmv (char uplo, int n, int k, double alpha,
cublas_v2.h:#define cublasSsbmv cublasSsbmv_v2
cublas_v2.h:#define cublasDsbmv cublasDsbmv_v2