Uni20
Asynchronous tensor and runtime library.
Loading...
Searching...
No Matches
Public Attributes | Static Public Attributes | List of all members
uni20::linalg::LoopedGemmContractionBackend< GemmSelector > Struct Template Reference

Contract through a loop of GEMMs selected from one retained execution selector. More...

#include <contract.hpp>

Collaboration diagram for uni20::linalg::LoopedGemmContractionBackend< GemmSelector >:
[legend]

Public Attributes

GemmSelector gemm_selector
 

Static Public Attributes

static constexpr std::string_view name = "looped_gemm_contraction"
 

Detailed Description

template<KernelBackendSelector GemmSelector>
struct uni20::linalg::LoopedGemmContractionBackend< GemmSelector >

Contract through a loop of GEMMs selected from one retained execution selector.

This backend implements only contract_op. It accepts one residual M or N stride group, offsets normalized mdspec operands for each disjoint output slice, and delegates every rank-two slice to gemm_op. Contracted K dimensions are not looped.

Member Data Documentation

◆ gemm_selector

template<KernelBackendSelector GemmSelector>
GemmSelector uni20::linalg::LoopedGemmContractionBackend< GemmSelector >::gemm_selector

◆ name

template<KernelBackendSelector GemmSelector>
constexpr std::string_view uni20::linalg::LoopedGemmContractionBackend< GemmSelector >::name = "looped_gemm_contraction"
staticconstexpr

The documentation for this struct was generated from the following file: