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

#include <linalg_lu.h>

Inheritance diagram for infini::ops::linalg::Lu:
infini::ops::Operator< Lu > infini::ops::OperatorBase infini::ops::OperatorBase

Public Member Functions

 Lu (const Tensor A, const bool pivot, Tensor P, Tensor L, Tensor U)
 
virtual void operator() (const Tensor A, const bool pivot, Tensor P, Tensor L, Tensor U) const =0
 
- Public Member Functions inherited from infini::ops::Operator< Lu >
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 A_shape_
 
Tensor::Strides A_strides_
 
DataType A_type_
 
Tensor::Shape P_shape_
 
Tensor::Strides P_strides_
 
DataType P_type_
 
Tensor::Shape L_shape_
 
Tensor::Strides L_strides_
 
DataType L_type_
 
Tensor::Shape U_shape_
 
Tensor::Strides U_strides_
 
DataType U_type_
 
bool pivot_ {}
 
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< Lu >
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< Lu >
static constexpr Device::Type device_type_
 
static constexpr std::size_t implementation_index_
 

Constructor & Destructor Documentation

◆ Lu()

infini::ops::linalg::Lu::Lu ( const Tensor  A,
const bool  pivot,
Tensor  P,
Tensor  L,
Tensor  U 
)
inline

Member Function Documentation

◆ operator()()

virtual void infini::ops::linalg::Lu::operator() ( const Tensor  A,
const bool  pivot,
Tensor  P,
Tensor  L,
Tensor  U 
) const
pure virtual

Member Data Documentation

◆ A_shape_

Tensor::Shape infini::ops::linalg::Lu::A_shape_
protected

◆ A_strides_

Tensor::Strides infini::ops::linalg::Lu::A_strides_
protected

◆ A_type_

DataType infini::ops::linalg::Lu::A_type_
protected

◆ device_index_

int infini::ops::linalg::Lu::device_index_ {0}
protected

◆ L_shape_

Tensor::Shape infini::ops::linalg::Lu::L_shape_
protected

◆ L_strides_

Tensor::Strides infini::ops::linalg::Lu::L_strides_
protected

◆ L_type_

DataType infini::ops::linalg::Lu::L_type_
protected

◆ P_shape_

Tensor::Shape infini::ops::linalg::Lu::P_shape_
protected

◆ P_strides_

Tensor::Strides infini::ops::linalg::Lu::P_strides_
protected

◆ P_type_

DataType infini::ops::linalg::Lu::P_type_
protected

◆ pivot_

bool infini::ops::linalg::Lu::pivot_ {}
protected

◆ U_shape_

Tensor::Shape infini::ops::linalg::Lu::U_shape_
protected

◆ U_strides_

Tensor::Strides infini::ops::linalg::Lu::U_strides_
protected

◆ U_type_

DataType infini::ops::linalg::Lu::U_type_
protected

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