I am trying to implement a conjugate-gradient algorithm using CUDA. Basicaly, it requires dot products and sparse-matrix vector multiplies. The dot product is covered by CUBLAS, but I coult not find anything related to sparse-matrix vector multiply (there are however lots of functions for dense matrices and banded matrices, but these don’t help much …). My matrix is stored in CRS format. Does anyone know if such function exist?
Also, another problem come up. Since CRS means storing the matrix in two long and one shorer vectors, and since my matrices are big, the number of elements greatly exceeds the unsigned int limit of 65535. I am currently thinking to cut the vectors into pieces and work with them as arrays. Is there another option ?
Thanks a lot,