|
Uni20
Asynchronous tensor and runtime library.
|
Blocking cuSOLVER exact SVD over CUDA-buffer mdspec operands. More...
#include <uni20/backend/cuda/buffer.hpp>#include <uni20/backend/cuda/cuda_error.hpp>#include <uni20/backend/cusolver/cusolver_error.hpp>#include <uni20/backend/cusolver/execution.hpp>#include <uni20/linalg/blas/mdspan_matrix.hpp>#include <uni20/linalg/dispatch.hpp>#include <uni20/linalg/operation_tags.hpp>#include <uni20/storage/cuda_accessor.hpp>#include <uni20/storage/cuda_storage.hpp>#include <algorithm>#include <concepts>#include <cstddef>#include <limits>#include <memory>#include <optional>#include <type_traits>#include <utility>Go to the source code of this file.
Namespaces | |
| namespace | uni20 |
| namespace | uni20::linalg |
Functions | |
| template<uni20::MutableRankedStridedMdspecLike< 1 > Values, uni20::MutableRankedStridedMdspecLike< 2 > Left, uni20::MutableRankedStridedMdspecLike< 2 > Right, uni20::MutableRankedStridedMdspecLike< 2 > Matrix> | |
| consteval auto | uni20::linalg::kernel_accepts_types (CusolverBackend const &, svd_op const &, Values &, Left &, Right &, Matrix &) |
| Report cuSOLVER eligibility for a CUDA-buffer exact SVD. | |
| template<uni20::MutableRankedStridedMdspecLike< 1 > Values, uni20::MutableRankedStridedMdspecLike< 2 > Left, uni20::MutableRankedStridedMdspecLike< 2 > Right, uni20::MutableRankedStridedMdspecLike< 2 > Matrix> requires detail::cusolver_backend::CusolverSvdMdspecs<Values, Left, Right, Matrix> | |
| KernelAttempt | uni20::linalg::try_kernel (CusolverBackend, svd_op const &operation, Values &values, Left &left, Right &right, Matrix &matrix) |
Compute one blocking exact SVD through cuSOLVER gesvd. | |
Blocking cuSOLVER exact SVD over CUDA-buffer mdspec operands.