@@ -27,6 +27,9 @@ for f in (:geqrf!, :ungqr!, :unmqr!)
2727 @eval $ f (:: ROCSOLVER , args... ) = YArocSOLVER.$ f (args... )
2828end
2929
30+ MatrixAlgebraKit. supports_svd (:: ROCSOLVER , f:: Symbol ) = f in (:qr_iteration , :jacobi )
31+ MatrixAlgebraKit. supports_svd_full (:: ROCSOLVER , f:: Symbol ) = f in (:qr_iteration , :jacobi )
32+
3033function gesvd! (:: ROCSOLVER , A:: StridedROCMatrix , S:: StridedROCVector , U:: StridedROCMatrix , Vᴴ:: StridedROCMatrix ; kwargs... )
3134 m, n = size (A)
3235 m >= n && return YArocSOLVER. gesvd! (A, S, U, Vᴴ)
@@ -38,6 +41,7 @@ function gesvdj!(::ROCSOLVER, A::StridedROCMatrix, S::StridedROCVector, U::Strid
3841 m >= n && return YArocSOLVER. gesvdj! (A, S, U, Vᴴ; kwargs... )
3942 return MatrixAlgebraKit. svd_via_adjoint! (gesvdj!, ROCSOLVER (), A, S, U, Vᴴ; kwargs... )
4043end
44+
4145_gpu_heevj! (A:: StridedROCMatrix , Dd:: StridedROCVector , V:: StridedROCMatrix ; kwargs... ) =
4246 YArocSOLVER. heevj! (A, Dd, V; kwargs... )
4347_gpu_heevd! (A:: StridedROCMatrix , Dd:: StridedROCVector , V:: StridedROCMatrix ; kwargs... ) =
0 commit comments