CUDA Fortran / NVFORTRAN support for GPU-accelerated ZGESVD / ZGESDD via NVLAMATH

Hello,

I am using CUDA Fortran with the NVIDIA HPC SDK (NVFORTRAN).

In LAPACK documentation, routines such as:

  • ZGESVD

  • ZGESDD

  • DGESVD

  • DGESDD

exist as standard CPU LAPACK interfaces.

My question is specifically about CUDA Fortran + NVHPC behavior:

If I call LAPACK-style routines like:

call zgesvd(…)

call zgesdd(…)

from CUDA Fortran code compiled with nvfortran, will these calls automatically dispatch to GPU-backed implementations internally (through cuSOLVER/NVLAMATH), similar to how some eigensolvers such as zheevd are GPU accelerated? (I am asking this because I often call zheevd/dsyevd directly as i would call the CPU LAPACK version, because I link my code with nvlamath and do not use the cusolverDnZheevd/Dsyevd.)

I would also like to know whether NVLAMATH currently supports GPU-backed complex SVD (ZGESVD / ZGESDD) in CUDA Fortran.

Thank you.

I would recommend this question be posted on the forum specific to the HPC SDK and nvfortran (part of the HPC SDK), here. I can move it there if you wish.

Ok. I will move it there. Thanks.