batmat 0.0.14
Batched linear algebra routines
Loading...
Searching...
No Matches
syomv.hpp File Reference

Go to the source code of this file.

Classes

struct  batmat::linalg::micro_kernels::syomv::KernelConfig

Namespaces

namespace  batmat
namespace  batmat::linalg
namespace  batmat::linalg::micro_kernels
namespace  batmat::linalg::micro_kernels::syomv

Functions

template<class T, class Abi, KernelConfig Conf, index_t RowsReg, StorageOrder OA, StorageOrder OB, StorageOrder OD>
void batmat::linalg::micro_kernels::syomv::syomv_microkernel (const uview< const T, Abi, OA > A, const uview< const T, Abi, OB > B, const uview< T, Abi, OD > D, const index_t l0, const index_t k) noexcept
 Symmetric off-diagonal block multiply. Single register block.
template<class T, class Abi, KernelConfig Conf, StorageOrder OA, StorageOrder OB, StorageOrder OD>
void batmat::linalg::micro_kernels::syomv::syomv_register (const view< const T, Abi, OA > A, const view< const T, Abi, OB > B, const view< T, Abi, OD > D) noexcept
 Generalized matrix multiplication D = C ± A⁽ᵀ⁾ B⁽ᵀ⁾. Using register blocking.

Variables

template<class T, class Abi, KernelConfig Conf, StorageOrder OA, StorageOrder OB, StorageOrder OD>
const constinit auto batmat::linalg::micro_kernels::syomv::syomv_lut
template<class T, class Abi>
constexpr index_t batmat::linalg::micro_kernels::syomv::RowsReg
 Register block size of the matrix-matrix multiplication micro-kernels.

Class Documentation

◆ batmat::linalg::micro_kernels::syomv::KernelConfig

struct batmat::linalg::micro_kernels::syomv::KernelConfig
Class Members
bool negate = false
MatrixStructure struc_A = MatrixStructure::LowerTriangular