Logo ROOT  
Reference Guide
 
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
Loading...
Searching...
No Matches
TMVA::Experimental::SOFIE::ROperator_Einsum< T > Class Template Referencefinal

template<typename T>
class TMVA::Experimental::SOFIE::ROperator_Einsum< T >

Definition at line 18 of file ROperator_Einsum.hxx.

Public Member Functions

 ROperator_Einsum ()
 
 ROperator_Einsum (const std::string &equation, const std::vector< std::string > &namesX, const std::string &nameY)
 
std::string Generate (std::string opName) override
 
std::string GenerateInitCode () override
 
std::vector< std::string > GetBlasRoutines () override
 
void Initialize (RModel &model) override
 
bool ParseEquation (const std::string &input_equation)
 
std::vector< std::vector< size_t > > ShapeInference (std::vector< std::vector< size_t > > input) override
 
std::vector< ETensorTypeTypeInference (std::vector< ETensorType > input) override
 
- Public Member Functions inherited from TMVA::Experimental::SOFIE::ROperator
virtual ~ROperator ()
 
virtual std::string GenerateDeclCode ()
 
virtual std::string GenerateSessionMembersCode (std::string)
 
std::span< const std::string_view > GetOpInputTensors () const
 
std::span< const std::string_view > GetOpOutputTensors () const
 
virtual std::vector< std::string > GetStdLibs ()
 
virtual std::string Header ()
 

Private Attributes

std::string fGemmType
 
std::vector< std::string > fInputLabels
 
bool fIsInputBoolTensor = false
 
std::vector< std::string > fNInputs
 
std::string fNY
 
std::string fOutputLabels
 
std::vector< std::vector< size_t > > fShapeInputs
 
std::vector< size_t > fShapeY
 
std::vector< intfSumDims
 
std::string fSumLabels
 

Additional Inherited Members

- Protected Attributes inherited from TMVA::Experimental::SOFIE::ROperator
std::vector< std::string_view > fInputTensorNames
 
bool fIsOutputConstant = false
 flag to identify if operator has a constant output (no need to generate code)
 
std::vector< std::string_view > fOutputTensorNames
 
bool fUseSession = false
 flag to identify if using the session class
 
const std::string SP = " "
 space used to correctly indent the generated C++ code
 

#include <TMVA/ROperator_Einsum.hxx>

Inheritance diagram for TMVA::Experimental::SOFIE::ROperator_Einsum< T >:
[legend]

Constructor & Destructor Documentation

◆ ROperator_Einsum() [1/2]

template<typename T >
TMVA::Experimental::SOFIE::ROperator_Einsum< T >::ROperator_Einsum ( )
inline

Definition at line 41 of file ROperator_Einsum.hxx.

◆ ROperator_Einsum() [2/2]

template<typename T >
TMVA::Experimental::SOFIE::ROperator_Einsum< T >::ROperator_Einsum ( const std::string & equation,
const std::vector< std::string > & namesX,
const std::string & nameY )
inline

Definition at line 42 of file ROperator_Einsum.hxx.

Member Function Documentation

◆ Generate()

template<typename T >
std::string TMVA::Experimental::SOFIE::ROperator_Einsum< T >::Generate ( std::string opName)
inlineoverridevirtual

Implements TMVA::Experimental::SOFIE::ROperator.

Definition at line 206 of file ROperator_Einsum.hxx.

◆ GenerateInitCode()

template<typename T >
std::string TMVA::Experimental::SOFIE::ROperator_Einsum< T >::GenerateInitCode ( )
inlineoverridevirtual

Reimplemented from TMVA::Experimental::SOFIE::ROperator.

Definition at line 201 of file ROperator_Einsum.hxx.

◆ GetBlasRoutines()

template<typename T >
std::vector< std::string > TMVA::Experimental::SOFIE::ROperator_Einsum< T >::GetBlasRoutines ( )
inlineoverridevirtual

Reimplemented from TMVA::Experimental::SOFIE::ROperator.

Definition at line 339 of file ROperator_Einsum.hxx.

◆ Initialize()

template<typename T >
void TMVA::Experimental::SOFIE::ROperator_Einsum< T >::Initialize ( RModel & model)
inlineoverridevirtual

Implements TMVA::Experimental::SOFIE::ROperator.

Definition at line 126 of file ROperator_Einsum.hxx.

◆ ParseEquation()

template<typename T >
bool TMVA::Experimental::SOFIE::ROperator_Einsum< T >::ParseEquation ( const std::string & input_equation)
inline

Definition at line 58 of file ROperator_Einsum.hxx.

◆ ShapeInference()

template<typename T >
std::vector< std::vector< size_t > > TMVA::Experimental::SOFIE::ROperator_Einsum< T >::ShapeInference ( std::vector< std::vector< size_t > > input)
inlineoverridevirtual

Implements TMVA::Experimental::SOFIE::ROperator.

Definition at line 120 of file ROperator_Einsum.hxx.

◆ TypeInference()

template<typename T >
std::vector< ETensorType > TMVA::Experimental::SOFIE::ROperator_Einsum< T >::TypeInference ( std::vector< ETensorType > input)
inlineoverridevirtual

Implements TMVA::Experimental::SOFIE::ROperator.

Definition at line 115 of file ROperator_Einsum.hxx.

Member Data Documentation

◆ fGemmType

template<typename T >
std::string TMVA::Experimental::SOFIE::ROperator_Einsum< T >::fGemmType
private

Definition at line 30 of file ROperator_Einsum.hxx.

◆ fInputLabels

template<typename T >
std::vector<std::string> TMVA::Experimental::SOFIE::ROperator_Einsum< T >::fInputLabels
private

Definition at line 27 of file ROperator_Einsum.hxx.

◆ fIsInputBoolTensor

template<typename T >
bool TMVA::Experimental::SOFIE::ROperator_Einsum< T >::fIsInputBoolTensor = false
private

Definition at line 21 of file ROperator_Einsum.hxx.

◆ fNInputs

template<typename T >
std::vector<std::string> TMVA::Experimental::SOFIE::ROperator_Einsum< T >::fNInputs
private

Definition at line 24 of file ROperator_Einsum.hxx.

◆ fNY

template<typename T >
std::string TMVA::Experimental::SOFIE::ROperator_Einsum< T >::fNY
private

Definition at line 25 of file ROperator_Einsum.hxx.

◆ fOutputLabels

template<typename T >
std::string TMVA::Experimental::SOFIE::ROperator_Einsum< T >::fOutputLabels
private

Definition at line 28 of file ROperator_Einsum.hxx.

◆ fShapeInputs

template<typename T >
std::vector<std::vector<size_t> > TMVA::Experimental::SOFIE::ROperator_Einsum< T >::fShapeInputs
private

Definition at line 34 of file ROperator_Einsum.hxx.

◆ fShapeY

template<typename T >
std::vector<size_t> TMVA::Experimental::SOFIE::ROperator_Einsum< T >::fShapeY
private

Definition at line 35 of file ROperator_Einsum.hxx.

◆ fSumDims

template<typename T >
std::vector<int> TMVA::Experimental::SOFIE::ROperator_Einsum< T >::fSumDims
private

Definition at line 32 of file ROperator_Einsum.hxx.

◆ fSumLabels

template<typename T >
std::string TMVA::Experimental::SOFIE::ROperator_Einsum< T >::fSumLabels
private

Definition at line 29 of file ROperator_Einsum.hxx.

  • tmva/sofie/inc/TMVA/ROperator_Einsum.hxx