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

#include <div.h>

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

Public Member Functions

 Div (const Tensor input, const Tensor other, Tensor out)
 
 Div (const Tensor input, const Tensor other, const std::optional< std::string > rounding_mode, Tensor out)
 
 Div (Tensor input, const Tensor other)
 
 Div (Tensor input, const Tensor other, const std::optional< std::string > rounding_mode)
 
 Div (const Tensor input, const double other, Tensor out)
 
 Div (const Tensor input, const double other, const std::optional< std::string > rounding_mode, Tensor out)
 
virtual void operator() (const Tensor input, const Tensor other, Tensor out) const =0
 
virtual void operator() (const Tensor input, const Tensor other, const std::optional< std::string > rounding_mode, Tensor out) const =0
 
virtual void operator() (Tensor input, const Tensor other) const =0
 
virtual void operator() (Tensor input, const Tensor other, const std::optional< std::string > rounding_mode) const =0
 
virtual void operator() (const Tensor input, const double other, Tensor out) const =0
 
virtual void operator() (const Tensor input, const double other, const std::optional< std::string > rounding_mode, Tensor out) const =0
 
- Public Member Functions inherited from infini::ops::Operator< Div >
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 Attributes

Tensor::Shape input_shape_
 
Tensor::Strides input_strides_
 
DataType input_type_
 
Tensor::Shape other_shape_
 
Tensor::Strides other_strides_
 
DataType other_type_
 
Tensor::Shape out_shape_
 
Tensor::Strides out_strides_
 
DataType out_type_
 
std::optional< std::string > rounding_mode_ {}
 
double other_ {}
 
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< Div >
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< Div >
static constexpr Device::Type device_type_
 
static constexpr std::size_t implementation_index_
 

Constructor & Destructor Documentation

◆ Div() [1/6]

infini::ops::Div::Div ( const Tensor  input,
const Tensor  other,
Tensor  out 
)
inline

◆ Div() [2/6]

infini::ops::Div::Div ( const Tensor  input,
const Tensor  other,
const std::optional< std::string >  rounding_mode,
Tensor  out 
)
inline

◆ Div() [3/6]

infini::ops::Div::Div ( Tensor  input,
const Tensor  other 
)
inline
Deprecated:
Use the explicit-output constructor. This constructor will be removed in a future release.

◆ Div() [4/6]

infini::ops::Div::Div ( Tensor  input,
const Tensor  other,
const std::optional< std::string >  rounding_mode 
)
inline
Deprecated:
Use the explicit-output constructor. This constructor will be removed in a future release.

◆ Div() [5/6]

infini::ops::Div::Div ( const Tensor  input,
const double  other,
Tensor  out 
)
inline

◆ Div() [6/6]

infini::ops::Div::Div ( const Tensor  input,
const double  other,
const std::optional< std::string >  rounding_mode,
Tensor  out 
)
inline

Member Function Documentation

◆ operator()() [1/6]

virtual void infini::ops::Div::operator() ( const Tensor  input,
const double  other,
const std::optional< std::string >  rounding_mode,
Tensor  out 
) const
pure virtual

◆ operator()() [2/6]

virtual void infini::ops::Div::operator() ( const Tensor  input,
const double  other,
Tensor  out 
) const
pure virtual

◆ operator()() [3/6]

virtual void infini::ops::Div::operator() ( const Tensor  input,
const Tensor  other,
const std::optional< std::string >  rounding_mode,
Tensor  out 
) const
pure virtual

◆ operator()() [4/6]

virtual void infini::ops::Div::operator() ( const Tensor  input,
const Tensor  other,
Tensor  out 
) const
pure virtual

◆ operator()() [5/6]

virtual void infini::ops::Div::operator() ( Tensor  input,
const Tensor  other 
) const
pure virtual
Deprecated:
Use the explicit-output overload. This overload will be removed in a future release.

◆ operator()() [6/6]

virtual void infini::ops::Div::operator() ( Tensor  input,
const Tensor  other,
const std::optional< std::string >  rounding_mode 
) const
pure virtual
Deprecated:
Use the explicit-output overload. This overload will be removed in a future release.

Member Data Documentation

◆ device_index_

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

◆ input_shape_

Tensor::Shape infini::ops::Div::input_shape_
protected

◆ input_strides_

Tensor::Strides infini::ops::Div::input_strides_
protected

◆ input_type_

DataType infini::ops::Div::input_type_
protected

◆ other_

double infini::ops::Div::other_ {}
protected

◆ other_shape_

Tensor::Shape infini::ops::Div::other_shape_
protected

◆ other_strides_

Tensor::Strides infini::ops::Div::other_strides_
protected

◆ other_type_

DataType infini::ops::Div::other_type_
protected

◆ out_shape_

Tensor::Shape infini::ops::Div::out_shape_
protected

◆ out_strides_

Tensor::Strides infini::ops::Div::out_strides_
protected

◆ out_type_

DataType infini::ops::Div::out_type_
protected

◆ rounding_mode_

std::optional<std::string> infini::ops::Div::rounding_mode_ {}
protected

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