Hi, I am trying to perform incomplete cholesky with cusparse.
I have followed the code in the sample and it reports a structural zero in the analysis and a numerical zero in the upper factorisation. Expectantly, calling triangular solve with this factorisation returns an error.
I have got the factorisation working with the cusolver factorisation (in the low level preview) using cusolverSpScsrcholFactor. This does reduce the number of interations to convergence from 23 for the CG optimiser to 3 with preconditioning. However the performance of the cusolver factorisation and solve functions is far slower than not using it, despite taking far fewer iterations.
As far as I can tell there is no singularity in the matrix and I can not understand why the cusparse cholesky factorisation doesn’t work. As mentioned, cusolver can factorise the matrix - as can Eigen.
Please, if anyone can explain where I might be going wrong with the cusparse factorisation or how I can implement a fast cholesky preconditioner with cuda it would be greatly appreciated.
Thank you in advance.