|
Uni20
Asynchronous tensor and runtime library.
|
Reference CPU GEMM backend for tensor-view operands. More...
#include <uni20/core/scalar_concepts.hpp>#include <uni20/linalg/cpu/gemm.hpp>#include <uni20/linalg/dispatch.hpp>#include <uni20/linalg/matrix_product_shape.hpp>#include <uni20/linalg/operation_tags.hpp>#include <uni20/tensor/access.hpp>#include <uni20/tensor/concepts.hpp>#include <uni20/tensor/output.hpp>#include <concepts>#include <type_traits>#include <utility>Go to the source code of this file.
Namespaces | |
| namespace | uni20 |
| namespace | uni20::linalg |
Functions | |
| template<uni20::MutableRankedTensorView< 2 > OutputTensor, uni20::Scalar Scalar, uni20::RankedMdspecLike< 2 > LhsMdspan, uni20::RankedMdspecLike< 2 > RhsMdspan> requires detail::HostAssignProductAccess<OutputTensor, LhsMdspan, RhsMdspan> | |
| consteval auto | uni20::linalg::kernel_accepts_types (CpuReferenceBackend const &, assign_product_op const &, async::shared_storage< OutputTensor > &, Scalar const &, LhsMdspan &, RhsMdspan &) |
| Report eligibility for a deferred host Tensor matrix-product output. | |
| template<uni20::MutableRankedTensorView< 2 > OutputTensor, uni20::Scalar Scalar, uni20::RankedMdspecLike< 2 > LhsMdspan, uni20::RankedMdspecLike< 2 > RhsMdspan> requires detail::HostAssignProductAccess<OutputTensor, LhsMdspan, RhsMdspan> | |
| consteval auto | uni20::linalg::kernel_accepts_types (CpuReferenceBackend const &, assign_product_op const &, OutputTensor &, Scalar const &, LhsMdspan &, RhsMdspan &) |
| Report eligibility for replaceable-output host tensor matrix products. | |
| template<uni20::MutableRankedMdspecLike< 2 > OutputMdspan, uni20::Scalar Scalar, uni20::RankedMdspecLike< 2 > LhsMdspan, uni20::RankedMdspecLike< 2 > RhsMdspan> requires detail::HostGemmMdspanAccess<OutputMdspan, LhsMdspan, RhsMdspan> | |
| consteval auto | uni20::linalg::kernel_accepts_types (CpuReferenceBackend const &, gemm_op const &, OutputMdspan &, Scalar const &, LhsMdspan &, RhsMdspan &, Scalar const &) |
| Report eligibility for host-accessible mdspec CPU GEMM. | |
| template<uni20::MutableRankedTensorView< 2 > OutputTensor, uni20::Scalar Scalar, uni20::RankedMdspecLike< 2 > LhsMdspan, uni20::RankedMdspecLike< 2 > RhsMdspan> requires detail::HostAssignProductAccess<OutputTensor, LhsMdspan, RhsMdspan> | |
| KernelAttempt | uni20::linalg::try_kernel (CpuReferenceBackend, assign_product_op const &, async::shared_storage< OutputTensor > &output_storage, Scalar alpha, LhsMdspan &lhs, RhsMdspan &rhs) |
| Construct or resize a deferred host output and run reference GEMM. | |
| template<uni20::MutableRankedTensorView< 2 > OutputTensor, uni20::Scalar Scalar, uni20::RankedMdspecLike< 2 > LhsMdspan, uni20::RankedMdspecLike< 2 > RhsMdspan> requires detail::HostAssignProductAccess<OutputTensor, LhsMdspan, RhsMdspan> | |
| KernelAttempt | uni20::linalg::try_kernel (CpuReferenceBackend, assign_product_op const &, OutputTensor &output, Scalar alpha, LhsMdspan &lhs, RhsMdspan &rhs) |
| Lower a replaceable-output host tensor matrix product to fixed-output GEMM. | |
| template<uni20::MutableRankedMdspecLike< 2 > OutputMdspan, uni20::Scalar Scalar, uni20::RankedMdspecLike< 2 > LhsMdspan, uni20::RankedMdspecLike< 2 > RhsMdspan> requires detail::HostGemmMdspanAccess<OutputMdspan, LhsMdspan, RhsMdspan> | |
| KernelAttempt | uni20::linalg::try_kernel (CpuReferenceBackend, gemm_op const &, OutputMdspan &output, Scalar alpha, LhsMdspan &lhs, RhsMdspan &rhs, Scalar beta) |
| Resolve host access and run reference GEMM. | |
Reference CPU GEMM backend for tensor-view operands.