InfiniOps
Operator Library for Accelerators
Loading...
Searching...
No Matches
infini::ops::MoeSum Class Referenceabstract

#include <moe_sum.h>

Inheritance diagram for infini::ops::MoeSum:
infini::ops::Operator< MoeSum > infini::ops::OperatorBase infini::ops::OperatorBase

Public Member Functions

 MoeSum (const Tensor input, Tensor output)
 
 MoeSum (const Tensor input, std::optional< Tensor > topk_ids, std::optional< Tensor > expert_map, Tensor output)
 
void operator() (const Tensor input, Tensor output) const
 
virtual void operator() (const Tensor input, std::optional< Tensor > topk_ids, std::optional< Tensor > expert_map, Tensor output) const =0
 
- Public Member Functions inherited from infini::ops::Operator< MoeSum >
void operator() (const Handle &handle, const Args &... args)
 
void operator() (const Args &... args) const
 
void operator() (const Handle &handle, const Args &... args)
 
void operator() (const Args &... args) const
 
- Public Member Functions inherited from infini::ops::OperatorBase
virtual ~OperatorBase ()=default
 
virtual std::size_t workspace_size_in_bytes () const
 
void set_handle (const Handle &handle)
 
void set_config (const Config &config)
 
void set_stream (void *stream)
 
void set_workspace (void *workspace)
 
void set_workspace_size_in_bytes (std::size_t workspace_size_in_bytes)
 
virtual ~OperatorBase ()=default
 
virtual std::size_t workspace_size_in_bytes () const
 
void set_handle (const Handle &handle)
 
void set_config (const Config &config)
 
void set_stream (void *stream)
 
void set_workspace (void *workspace)
 
void set_workspace_size_in_bytes (std::size_t workspace_size_in_bytes)
 

Protected Member Functions

void ValidateCallMetadata (const Tensor input, std::optional< Tensor > topk_ids, std::optional< Tensor > expert_map, const Tensor output) const
 

Protected Attributes

Tensor::Size num_tokens_ {0}
 
Tensor::Size topk_ {0}
 
Tensor::Size hidden_size_ {0}
 
Tensor::Strides input_strides_
 
Tensor::Strides output_strides_
 
DataType dtype_
 
Device::Type device_type_
 
bool has_topk_ids_ {false}
 
DataType topk_ids_dtype_
 
Tensor::Stride topk_ids_token_stride_ {0}
 
Tensor::Stride topk_ids_slot_stride_ {0}
 
bool has_expert_map_ {false}
 
Tensor::Size expert_map_size_ {0}
 
Tensor::Stride expert_map_stride_ {0}
 
int device_index_ {0}
 
- Protected Attributes inherited from infini::ops::OperatorBase
std::unique_ptr< Handle > handle_ptr_
 
std::unique_ptr< Config > config_ptr_
 
void * stream_ {nullptr}
 
void * workspace_ {nullptr}
 
std::size_t workspace_size_in_bytes_ {0}
 

Additional Inherited Members

- Static Public Member Functions inherited from infini::ops::Operator< MoeSum >
static void clear_cache ()
 
static void clear_cache ()
 
static std::unique_ptr< Operator > Make (const Config &config, const Tensor tensor, Args &&... args)
 
static std::unique_ptr< Operator > Make (const Tensor tensor, Args &&... args)
 
static std::unique_ptr< Operator > Make (const Config &config, const std::vector< Tensor > tensors, Args &&... args)
 
static std::unique_ptr< Operator > Make (const std::vector< Tensor > tensors, Args &&... args)
 
static std::unique_ptr< Operator > Make (const Config &config, const Tensor tensor, Args &&... args)
 
static std::unique_ptr< Operator > Make (const Tensor tensor, Args &&... args)
 
static std::unique_ptr< Operator > Make (const Config &config, const std::vector< Tensor > tensors, Args &&... args)
 
static std::unique_ptr< Operator > Make (const std::vector< Tensor > tensors, Args &&... args)
 
static void Call (const Handle &handle, const Config &config, const Args &... args)
 
static void Call (const Tensor tensor, const Args &... args)
 
static auto Call (const TensorLike &tensor, const Args &... args)
 
static void Call (const Handle &handle, const Config &config, const Args &... args)
 
static void Call (const Tensor tensor, const Args &... args)
 
static auto Call (const TensorLike &tensor, const Args &... args)
 
static std::vector< std::size_t > active_implementation_indices (Device::Type dev_type)
 
static std::vector< std::size_t > active_implementation_indices (Device::Type dev_type)
 
- Static Protected Attributes inherited from infini::ops::Operator< MoeSum >
static constexpr Device::Type device_type_
 
static constexpr std::size_t implementation_index_
 

Constructor & Destructor Documentation

◆ MoeSum() [1/2]

infini::ops::MoeSum::MoeSum ( const Tensor  input,
Tensor  output 
)
inline

◆ MoeSum() [2/2]

infini::ops::MoeSum::MoeSum ( const Tensor  input,
std::optional< Tensor >  topk_ids,
std::optional< Tensor >  expert_map,
Tensor  output 
)
inline

Member Function Documentation

◆ operator()() [1/2]

virtual void infini::ops::MoeSum::operator() ( const Tensor  input,
std::optional< Tensor >  topk_ids,
std::optional< Tensor >  expert_map,
Tensor  output 
) const
pure virtual

◆ operator()() [2/2]

void infini::ops::MoeSum::operator() ( const Tensor  input,
Tensor  output 
) const
inline

◆ ValidateCallMetadata()

void infini::ops::MoeSum::ValidateCallMetadata ( const Tensor  input,
std::optional< Tensor >  topk_ids,
std::optional< Tensor >  expert_map,
const Tensor  output 
) const
inlineprotected

Member Data Documentation

◆ device_index_

int infini::ops::MoeSum::device_index_ {0}
protected

◆ device_type_

Device::Type infini::ops::MoeSum::device_type_
protected

◆ dtype_

DataType infini::ops::MoeSum::dtype_
protected

◆ expert_map_size_

Tensor::Size infini::ops::MoeSum::expert_map_size_ {0}
protected

◆ expert_map_stride_

Tensor::Stride infini::ops::MoeSum::expert_map_stride_ {0}
protected

◆ has_expert_map_

bool infini::ops::MoeSum::has_expert_map_ {false}
protected

◆ has_topk_ids_

bool infini::ops::MoeSum::has_topk_ids_ {false}
protected

◆ hidden_size_

Tensor::Size infini::ops::MoeSum::hidden_size_ {0}
protected

◆ input_strides_

Tensor::Strides infini::ops::MoeSum::input_strides_
protected

◆ num_tokens_

Tensor::Size infini::ops::MoeSum::num_tokens_ {0}
protected

◆ output_strides_

Tensor::Strides infini::ops::MoeSum::output_strides_
protected

◆ topk_

Tensor::Size infini::ops::MoeSum::topk_ {0}
protected

◆ topk_ids_dtype_

DataType infini::ops::MoeSum::topk_ids_dtype_
protected

◆ topk_ids_slot_stride_

Tensor::Stride infini::ops::MoeSum::topk_ids_slot_stride_ {0}
protected

◆ topk_ids_token_stride_

Tensor::Stride infini::ops::MoeSum::topk_ids_token_stride_ {0}
protected

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