aten/src/ATen/native/cuda/linalg/BatchLinearAlgebraLib.cpp
inline static void svd_cusolver_gesvdj(const Tensor& A, const Tensor& U, const Tensor& S, const Tensor& V, const Tensor& infos, bool full_matrices, bool compute_uv) {
  AT_DISPATCH_FLOATING_AND_COMPLEX_TYPES(A.scalar_type(), "svd_cuda_gesvdj", [&] {
    apply_svd_cusolver_gesvdj<scalar_t>(A, U, S, V, infos, full_matrices, compute_uv);
  });
}
// wrapper around apply_svd_cusolver_gesvdj that handles dtype dispatch
// note that gesvdj returns V, which is what we want
// Need to pass a copy of A, since A will be rewritten inside the function call
wrapper around apply_svd_cusolver_gesvdj that handles dtype dispatch
note that gesvdj returns V, which is what we want
Need to pass a copy of A, since A will be rewritten inside the function call
wrapper around apply_svd_cusolver_gesvdj that handles dtype dispatch note that gesvdj returns V which is what we want Need to pass a copy of A since A will be rewritten inside the function call
inline static void svd_cusolver_gesvdj(const Tensor& A, const Tensor& U, const Tensor& S, const Tensor& V, const Tensor& infos, bool full_matrices, bool compute_uv) {
  AT_DISPATCH_FLOATING_AND_COMPLEX_TYPES(A.scalar_type(), "svd_cuda_gesvdj", [&] {
    apply_svd_cusolver_gesvdj<scalar_t>(A, U, S, V, infos, full_matrices, compute_uv);
  });
}
inline static void svd_cusolver_gesvdj ( const Tensor & A , const Tensor & U , const Tensor & S , const Tensor & V , const Tensor & infos , bool full_matrices , bool compute_uv ) { AT_DISPATCH_FLOATING_AND_COMPLEX_TYPES ( A . scalar_type ( ) , " " , [ & ] { apply_svd_cusolver_gesvdj < scalar_t > ( A , U , S , V , infos , full_matrices , compute_uv ) ; } ) ; }
wrapper around apply_svd_cusolver_gesvdj that handles dtype dispatch
note that gesvdj returns V, which is what we want
Need to pass a copy of A, since A will be rewritten inside the function call
wrapper around apply_svd_cusolver_gesvdj that handles dtype dispatch note that gesvdj returns V which is what we want Need to pass a copy of A since A will be rewritten inside the function call