Why Is 'S' parameter for cusolverDnDgesvd routine not supported?

Hey all,

I have to apply cusolver routine cusolverDnDgesvd on a rectangular matrix of size MN where M is greater then N. I would like U , S and Vt to have sizes of M * K , KK, K*N respectively .

It suggests in tutorial that one should give ‘S’ to parameters for jobu and jobvt which leads U to be size of MK and Vt to be KN . But i also read that only ‘A’ parameter is supported in Cuda 7.0 . But ‘A’ parameter leads U and Vt to be of MM and NN.

I am pretty confused since I do not much experience cuda libraries. In short, i would like to learn whether it is possible to factorize a rectangular matrix by a chosen rank with cusolverDnDgesvd routine.

Thanks a lot,

Using CUDA 8, I believe this restriction has been modified.

Please read the CUDA 8 documentation for this (I already gave you a link to it in your previous posting) and if desired, upgrade to CUDA 8. It appears to me that in CUDA 8 the S parameter is supported for jobu/jobvt. The only remaining restriction that I can see is that M>=N