Hello everyone! I’m Adrian, I’m trying to make a C program parallel using both OpenACC (to make things parallel) and CUDA (for some functions).
The functions I have to change are these two: dgemm_ and dgesvd_.
I’ve found the CUDA version of dgemm_, which is cublasDgemm; but I can’t find the CUDA version of dgesvd_.
Can you help me? Thank you in advance!! ^^
Hi Robert! First of all, thank you for the amazingly fast reply!
I see multiple functions that may be the one that I’m looking for, like cusolverDnDDgesv, cusolverDnDDgesv_bufferSize, cusolverDnDgesvdj_bufferSize, cusolverDnDgesvdj, or cusolverDnDgesvdjBatched.
Here is an example of a call to the function I’m trying to replace:
dgesvd_(“S”, “S”, &bands, &bands, svdMat, &bands, D, U, &bands, VT, &bands, work, &lwork, &info);
Could you tell me which is one is the function that works for me? Thank you a lot!
The one that seemed closest to me is cusolverDnDgesvd, and that is the one that is used in the sample code I directly linked to.
I see, thank you very much Robert!!