GroupedGemmKernelArgument< NumDTensor > Struct Template Reference

GroupedGemmKernelArgument&lt; NumDTensor &gt; Struct Template Reference#

Composable Kernel: ck::tensor_operation::device::GroupedGemmKernelArgument< NumDTensor > Struct Template Reference
ck::tensor_operation::device::GroupedGemmKernelArgument< NumDTensor > Struct Template Reference

Structure representing single GEMM problem arguments. More...

#include <device_grouped_gemm.hpp>

Public Member Functions

__host__ __device__ GroupedGemmKernelArgument (const void *p_a_grid_, const void *p_b_grid_, std::array< const void *, NumDTensor > p_ds_grid_, void *p_e_grid_, index_t M_, index_t N_, index_t K_, index_t StrideA_, index_t StrideB_, std::array< index_t, NumDTensor > StrideDs_, index_t StrideE_)
void Print () const

Public Attributes

const void * p_a_grid
const void * p_b_grid
std::array< const void *, NumDTensor > p_ds_grid
void * p_e_grid
index_t M
index_t N
index_t K
index_t StrideA
index_t StrideB
std::array< index_t, NumDTensor > StrideDs
index_t StrideE

Detailed Description

template<index_t NumDTensor = 0>
struct ck::tensor_operation::device::GroupedGemmKernelArgument< NumDTensor >

Structure representing single GEMM problem arguments.

        The pointer to the vector of those structures is passed to the GroupedGEMM entry
        point kernel.
Template Parameters
NumDTensorThe number of D input tensors.

Constructor & Destructor Documentation

◆ GroupedGemmKernelArgument()

template<index_t NumDTensor = 0>
__host__ __device__ ck::tensor_operation::device::GroupedGemmKernelArgument< NumDTensor >::GroupedGemmKernelArgument ( const void * p_a_grid_,
const void * p_b_grid_,
std::array< const void *, NumDTensor > p_ds_grid_,
void * p_e_grid_,
index_t M_,
index_t N_,
index_t K_,
index_t StrideA_,
index_t StrideB_,
std::array< index_t, NumDTensor > StrideDs_,
index_t StrideE_ )
inline

Member Function Documentation

◆ Print()

template<index_t NumDTensor = 0>
void ck::tensor_operation::device::GroupedGemmKernelArgument< NumDTensor >::Print ( ) const
inline

Member Data Documentation

◆ K

template<index_t NumDTensor = 0>
index_t ck::tensor_operation::device::GroupedGemmKernelArgument< NumDTensor >::K

◆ M

template<index_t NumDTensor = 0>
index_t ck::tensor_operation::device::GroupedGemmKernelArgument< NumDTensor >::M

◆ N

template<index_t NumDTensor = 0>
index_t ck::tensor_operation::device::GroupedGemmKernelArgument< NumDTensor >::N

◆ p_a_grid

template<index_t NumDTensor = 0>
const void* ck::tensor_operation::device::GroupedGemmKernelArgument< NumDTensor >::p_a_grid

◆ p_b_grid

template<index_t NumDTensor = 0>
const void* ck::tensor_operation::device::GroupedGemmKernelArgument< NumDTensor >::p_b_grid

◆ p_ds_grid

template<index_t NumDTensor = 0>
std::array<const void*, NumDTensor> ck::tensor_operation::device::GroupedGemmKernelArgument< NumDTensor >::p_ds_grid

◆ p_e_grid

template<index_t NumDTensor = 0>
void* ck::tensor_operation::device::GroupedGemmKernelArgument< NumDTensor >::p_e_grid

◆ StrideA

template<index_t NumDTensor = 0>
index_t ck::tensor_operation::device::GroupedGemmKernelArgument< NumDTensor >::StrideA

◆ StrideB

template<index_t NumDTensor = 0>
index_t ck::tensor_operation::device::GroupedGemmKernelArgument< NumDTensor >::StrideB

◆ StrideDs

template<index_t NumDTensor = 0>
std::array<index_t, NumDTensor> ck::tensor_operation::device::GroupedGemmKernelArgument< NumDTensor >::StrideDs

◆ StrideE

template<index_t NumDTensor = 0>
index_t ck::tensor_operation::device::GroupedGemmKernelArgument< NumDTensor >::StrideE

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