DevicePutElementImpl< InDataType, IndexDataType, OutDataType, ElementwiseOperation, MemOp, InVectorSize > Struct Template Reference

DevicePutElementImpl&lt; InDataType, IndexDataType, OutDataType, ElementwiseOperation, MemOp, InVectorSize &gt; Struct Template Reference#

Composable Kernel: ck::tensor_operation::device::DevicePutElementImpl< InDataType, IndexDataType, OutDataType, ElementwiseOperation, MemOp, InVectorSize > Struct Template Reference
ck::tensor_operation::device::DevicePutElementImpl< InDataType, IndexDataType, OutDataType, ElementwiseOperation, MemOp, InVectorSize > Struct Template Reference

#include <device_put_element_impl.hpp>

Inheritance diagram for ck::tensor_operation::device::DevicePutElementImpl< InDataType, IndexDataType, OutDataType, ElementwiseOperation, MemOp, InVectorSize >:
ck::tensor_operation::device::DevicePutElement< InDataType, IndexDataType, OutDataType, ElementwiseOperation, MemOp > ck::tensor_operation::device::BaseOperator

Classes

struct  Argument
struct  Invoker

Public Types

using InGrid1dDesc = decltype(MakeDescriptor_M(1, 1, 1))
using GridwisePutElement

Public Member Functions

bool IsSupportedArgument (const BaseArgument *p_arg) override
std::unique_ptr< BaseArgumentMakeArgumentPointer (const void *p_input, const void *p_indices, void *p_output, index_t input_length, index_t, ElementwiseOperation elementwise_op) override
std::unique_ptr< BaseInvokerMakeInvokerPointer () override
Public Member Functions inherited from ck::tensor_operation::device::BaseOperator
 BaseOperator ()=default
 BaseOperator (const BaseOperator &)=default
BaseOperatoroperator= (const BaseOperator &)=default
virtual std::string GetTypeString () const
virtual std::string GetInstanceString () const
virtual std::string GetTypeIdName () const
virtual std::optional< std::string > GetObjectName () const
virtual std::optional< std::string > GetTemplateInfo () const
virtual std::string GetTypeIdHashCode () const
virtual size_t GetWorkSpaceSize (const BaseArgument *) const
virtual void SetWorkSpacePointer (BaseArgument *p_arg, void *p_workspace, const StreamConfig &=StreamConfig{}) const
virtual ~BaseOperator ()

Static Public Member Functions

template<typename Desc_M>
static auto PadDescriptor_M_1d (Desc_M desc_m, index_t gridSize, index_t blockSize)
static auto MakeDescriptor_M (index_t length, index_t gridSize, index_t blockSize)

Member Typedef Documentation

◆ GridwisePutElement

template<typename InDataType, typename IndexDataType, typename OutDataType, typename ElementwiseOperation, InMemoryDataOperationEnum MemOp, ck::index_t InVectorSize>
using ck::tensor_operation::device::DevicePutElementImpl< InDataType, IndexDataType, OutDataType, ElementwiseOperation, MemOp, InVectorSize >::GridwisePutElement
Initial value:
InDataType,
IndexDataType,
OutDataType,
ElementwiseOperation,
MemOp,
InVectorSize>
Definition gridwise_put_element_1d.hpp:36
decltype(MakeDescriptor_M(1, 1, 1)) InGrid1dDesc
Definition device_put_element_impl.hpp:53

◆ InGrid1dDesc

template<typename InDataType, typename IndexDataType, typename OutDataType, typename ElementwiseOperation, InMemoryDataOperationEnum MemOp, ck::index_t InVectorSize>
using ck::tensor_operation::device::DevicePutElementImpl< InDataType, IndexDataType, OutDataType, ElementwiseOperation, MemOp, InVectorSize >::InGrid1dDesc = decltype(MakeDescriptor_M(1, 1, 1))

Member Function Documentation

◆ IsSupportedArgument()

template<typename InDataType, typename IndexDataType, typename OutDataType, typename ElementwiseOperation, InMemoryDataOperationEnum MemOp, ck::index_t InVectorSize>
bool ck::tensor_operation::device::DevicePutElementImpl< InDataType, IndexDataType, OutDataType, ElementwiseOperation, MemOp, InVectorSize >::IsSupportedArgument ( const BaseArgument * p_arg)
inlineoverridevirtual

◆ MakeArgumentPointer()

template<typename InDataType, typename IndexDataType, typename OutDataType, typename ElementwiseOperation, InMemoryDataOperationEnum MemOp, ck::index_t InVectorSize>
std::unique_ptr< BaseArgument > ck::tensor_operation::device::DevicePutElementImpl< InDataType, IndexDataType, OutDataType, ElementwiseOperation, MemOp, InVectorSize >::MakeArgumentPointer ( const void * p_input,
const void * p_indices,
void * p_output,
index_t input_length,
index_t ,
ElementwiseOperation elementwise_op )
inlineoverridevirtual

◆ MakeDescriptor_M()

template<typename InDataType, typename IndexDataType, typename OutDataType, typename ElementwiseOperation, InMemoryDataOperationEnum MemOp, ck::index_t InVectorSize>
auto ck::tensor_operation::device::DevicePutElementImpl< InDataType, IndexDataType, OutDataType, ElementwiseOperation, MemOp, InVectorSize >::MakeDescriptor_M ( index_t length,
index_t gridSize,
index_t blockSize )
inlinestatic

◆ MakeInvokerPointer()

template<typename InDataType, typename IndexDataType, typename OutDataType, typename ElementwiseOperation, InMemoryDataOperationEnum MemOp, ck::index_t InVectorSize>
std::unique_ptr< BaseInvoker > ck::tensor_operation::device::DevicePutElementImpl< InDataType, IndexDataType, OutDataType, ElementwiseOperation, MemOp, InVectorSize >::MakeInvokerPointer ( )
inlineoverridevirtual

◆ PadDescriptor_M_1d()

template<typename InDataType, typename IndexDataType, typename OutDataType, typename ElementwiseOperation, InMemoryDataOperationEnum MemOp, ck::index_t InVectorSize>
template<typename Desc_M>
auto ck::tensor_operation::device::DevicePutElementImpl< InDataType, IndexDataType, OutDataType, ElementwiseOperation, MemOp, InVectorSize >::PadDescriptor_M_1d ( Desc_M desc_m,
index_t gridSize,
index_t blockSize )
inlinestatic

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