Definition at line 12 of file RModel.hxx.
Public Member Functions | |
RModel ()=default | |
Default constructor. | |
RModel (const RModel &other)=delete | |
RModel (RModel &&other) | |
RModel (std::string function_name) | |
RModel (std::string name, std::string parsedtime) | |
~RModel ()=default | |
template<class T > | |
void | AddConstantTensor (const std::string &name, const std::vector< size_t > &shape, const std::vector< T > &data) |
template<class T > | |
void | AddConstantTensor (const std::string &name, const std::vector< size_t > &shape, const T *data) |
void | AddConstantTensor (std::string tensor_name, ETensorType type, std::vector< std::size_t > shape, std::shared_ptr< void > data) |
void | AddDynamicTensor (std::string tensor_name, ETensorType type, std::vector< Dim > shape) |
template<typename T > | |
void | AddInitializedTensor (const std::string &tensor_name, const std::vector< std::size_t > &shape, T *raw_data) |
void | AddInitializedTensor (std::string tensor_name, ETensorType type, std::vector< std::size_t > shape, std::shared_ptr< void > data) |
void | AddInputTensorInfo (std::string input_name, ETensorType type, std::vector< Dim > shape) |
void | AddInputTensorInfo (std::string input_name, ETensorType type, std::vector< size_t > shape) |
void | AddInputTensorName (std::string name) |
void | AddIntermediateTensor (std::string tensor_name, ETensorType type, std::vector< Dim > dim_shape) |
void | AddIntermediateTensor (std::string tensor_name, ETensorType type, std::vector< std::size_t > shape) |
void | AddOperator (std::unique_ptr< ROperator > op, int order_execution=-1) |
void | AddOperatorReference (ROperator *op, int order_execution=-1) |
void | AddOutputTensorNameList (std::vector< std::string > output_tensor_names) |
bool | CheckIfTensorAlreadyExist (std::string tensor_name) |
ClassDefNV (RModel, 3) | |
void | Generate (Options options=Options::kDefault, int batchSize=-1, int pos=0, bool verbose=false) |
void | Generate (std::underlying_type_t< Options > options, int batchSize=-1, long pos=0, bool verbose=false) |
std::string | GenerateInferSignature (bool isdecl=true) |
std::vector< Dim > | GetDynamicTensorShape (std::string name) |
std::shared_ptr< void > | GetInitializedTensorData (std::string tensor_name) |
const std::vector< std::string > & | GetInputTensorNames () const |
std::vector< std::string > | GetOutputTensorNames () |
const std::vector< std::string > & | GetOutputTensorNames () const |
const std::vector< size_t > & | GetTensorShape (std::string name) |
const ETensorType & | GetTensorType (std::string name) |
void | HeadInitializedTensors (std::string name, int n_print=50) |
void | Initialize (const std::map< std::string, size_t > &inputParams, bool verbose=false) |
void | Initialize (int batchSize=-1, bool verbose=false) |
void | InitializeSubGraph (std::shared_ptr< RModel > graph) |
bool | IsDynamicTensor (const std::string &name) const |
bool | IsInitializedTensor (const std::string &name) const |
bool | IsInputTensor (const std::string &name) const |
RModel & | operator= (const RModel &other)=delete |
RModel & | operator= (RModel &&other) |
void | OutputGenerated (std::string filename="", bool append=false) |
void | PrintDynamicTensors () |
void | PrintInitializedTensors () |
void | PrintIntermediateTensors () |
void | PrintOutputTensors () |
void | PrintRequiredInputTensors () |
void | ReadInitializedTensorsFromFile (long) |
void | SetFilename (std::string filename) |
void | SetNotWritableInitializedTensor (const std::string &tensor_name) |
void | UpdateInitializedTensor (std::string tensor_name, ETensorType type, std::vector< std::size_t > shape, std::shared_ptr< void > data) |
void | UpdateOutputTensorList (std::vector< std::string > curr_output_tensor, std::vector< std::string > modify_output_tensor) |
bool | UseSession () const |
int | Verbose () const |
long | WriteInitializedTensorsToFile (std::string filename="") |
Public Member Functions inherited from TMVA::Experimental::SOFIE::RModel_Base | |
RModel_Base ()=default | |
Default constructor. | |
RModel_Base (std::string function_name) | |
RModel_Base (std::string name, std::string parsedtime) | |
void | AddBlasRoutines (std::vector< std::string > routines) |
void | AddNeededCustomHeader (std::string filename) |
void | AddNeededStdLib (std::string libname) |
void | GenerateHeaderInfo (std::string &hgname) |
std::string | GetFilename () |
const std::string & | GetName () const |
void | OutputGenerated (std::string filename="", bool append=false) |
void | PrintGenerated () |
std::string | ReturnGenerated () |
void | SetFilename (std::string filename) |
Protected Member Functions | |
void | GenerateDynamicTensorInfo () |
void | GenerateInitializedTensorInfo () |
void | GenerateIntermediateTensorInfo () |
void | GenerateOutput () |
void | GenerateSessionCode () |
Private Attributes | |
int | fBatchSize = -1 |
std::unordered_map< std::string, DynamicTensorInfo > | fDynamicTensorInfos |
std::unordered_map< std::string, InitializedTensor > | fInitializedTensors |
std::unordered_map< std::string, InputTensorInfo > | fInputTensorInfos |
std::vector< std::string > | fInputTensorNames |
std::unordered_map< std::string, TensorInfo > | fIntermediateTensorInfos |
bool | fIsInitialized = false |
bool | fIsSubGraph = false |
std::vector< std::unique_ptr< ROperator > > | fOperators |
std::vector< std::string > | fOutputTensorNames |
RModel * | fParentGraph = nullptr |
long | fReadPos = 0 |
std::unordered_map< std::string, TensorInfo > | fReadyInputTensorInfos |
std::unordered_map< std::string, std::string > | fShapeParams |
std::vector< std::shared_ptr< RModel > > | fSubGraphs |
! sub-graph models (transient) | |
int | fVerbose = 0 |
const std::string | SP = " " |
Additional Inherited Members | |
Protected Attributes inherited from TMVA::Experimental::SOFIE::RModel_Base | |
const std::unordered_set< std::string > | fAllowedStdLib = {"vector", "algorithm", "cmath"} |
std::unordered_set< std::string > | fCustomOpHeaders |
std::string | fFileName |
std::string | fGC |
bool | fIsGNN = false |
bool | fIsGNNComponent = false |
std::string | fName = "UnnamedModel" |
std::unordered_set< std::string > | fNeededBlasRoutines |
std::unordered_set< std::string > | fNeededStdLib = {"vector"} |
std::string | fParseTime |
bool | fUseSession = true |
bool | fUseWeightFile = true |
WeightFileType | fWeightFile = WeightFileType::Text |
#include <TMVA/RModel.hxx>
TMVA::Experimental::SOFIE::RModel::RModel | ( | RModel && | other | ) |
Definition at line 23 of file RModel.cxx.
|
delete |
|
default |
|
default |
Default constructor.
Needed to allow serialization of ROOT objects. See https://root.cern/manual/io_custom_classes/#restrictions-on-types-root-io-can-handle
|
inline |
Definition at line 52 of file RModel.hxx.
|
inline |
Definition at line 55 of file RModel.hxx.
|
inline |
Definition at line 86 of file RModel.hxx.
|
inline |
Definition at line 78 of file RModel.hxx.
void TMVA::Experimental::SOFIE::RModel::AddConstantTensor | ( | std::string | tensor_name, |
ETensorType | type, | ||
std::vector< std::size_t > | shape, | ||
std::shared_ptr< void > | data | ||
) |
Definition at line 178 of file RModel.cxx.
void TMVA::Experimental::SOFIE::RModel::AddDynamicTensor | ( | std::string | tensor_name, |
ETensorType | type, | ||
std::vector< Dim > | shape | ||
) |
Definition at line 220 of file RModel.cxx.
|
inline |
Definition at line 95 of file RModel.hxx.
void TMVA::Experimental::SOFIE::RModel::AddInitializedTensor | ( | std::string | tensor_name, |
ETensorType | type, | ||
std::vector< std::size_t > | shape, | ||
std::shared_ptr< void > | data | ||
) |
Definition at line 168 of file RModel.cxx.
void TMVA::Experimental::SOFIE::RModel::AddInputTensorInfo | ( | std::string | input_name, |
ETensorType | type, | ||
std::vector< Dim > | shape | ||
) |
Definition at line 132 of file RModel.cxx.
void TMVA::Experimental::SOFIE::RModel::AddInputTensorInfo | ( | std::string | input_name, |
ETensorType | type, | ||
std::vector< size_t > | shape | ||
) |
Definition at line 142 of file RModel.cxx.
void TMVA::Experimental::SOFIE::RModel::AddInputTensorName | ( | std::string | name | ) |
Definition at line 151 of file RModel.cxx.
void TMVA::Experimental::SOFIE::RModel::AddIntermediateTensor | ( | std::string | tensor_name, |
ETensorType | type, | ||
std::vector< Dim > | dim_shape | ||
) |
Definition at line 203 of file RModel.cxx.
void TMVA::Experimental::SOFIE::RModel::AddIntermediateTensor | ( | std::string | tensor_name, |
ETensorType | type, | ||
std::vector< std::size_t > | shape | ||
) |
Definition at line 211 of file RModel.cxx.
void TMVA::Experimental::SOFIE::RModel::AddOperator | ( | std::unique_ptr< ROperator > | op, |
int | order_execution = -1 |
||
) |
Definition at line 155 of file RModel.cxx.
|
inline |
Definition at line 67 of file RModel.hxx.
void TMVA::Experimental::SOFIE::RModel::AddOutputTensorNameList | ( | std::vector< std::string > | output_tensor_names | ) |
Definition at line 241 of file RModel.cxx.
bool TMVA::Experimental::SOFIE::RModel::CheckIfTensorAlreadyExist | ( | std::string | tensor_name | ) |
Definition at line 122 of file RModel.cxx.
TMVA::Experimental::SOFIE::RModel::ClassDefNV | ( | RModel | , |
3 | |||
) |
|
inline |
Definition at line 133 of file RModel.hxx.
void TMVA::Experimental::SOFIE::RModel::Generate | ( | std::underlying_type_t< Options > | options, |
int | batchSize = -1 , |
||
long | pos = 0 , |
||
bool | verbose = false |
||
) |
Definition at line 703 of file RModel.cxx.
|
protected |
Definition at line 488 of file RModel.cxx.
std::string TMVA::Experimental::SOFIE::RModel::GenerateInferSignature | ( | bool | isdecl = true | ) |
Definition at line 501 of file RModel.cxx.
|
protected |
Definition at line 407 of file RModel.cxx.
|
protected |
Definition at line 447 of file RModel.cxx.
|
protected |
Definition at line 536 of file RModel.cxx.
|
protected |
Definition at line 621 of file RModel.cxx.
std::vector< Dim > TMVA::Experimental::SOFIE::RModel::GetDynamicTensorShape | ( | std::string | name | ) |
Definition at line 82 of file RModel.cxx.
std::shared_ptr< void > TMVA::Experimental::SOFIE::RModel::GetInitializedTensorData | ( | std::string | tensor_name | ) |
Definition at line 264 of file RModel.cxx.
|
inline |
Definition at line 154 of file RModel.hxx.
|
inline |
Definition at line 163 of file RModel.hxx.
|
inline |
Definition at line 155 of file RModel.hxx.
const std::vector< size_t > & TMVA::Experimental::SOFIE::RModel::GetTensorShape | ( | std::string | name | ) |
Definition at line 56 of file RModel.cxx.
const ETensorType & TMVA::Experimental::SOFIE::RModel::GetTensorType | ( | std::string | name | ) |
Definition at line 94 of file RModel.cxx.
void TMVA::Experimental::SOFIE::RModel::HeadInitializedTensors | ( | std::string | name, |
int | n_print = 50 |
||
) |
Definition at line 1045 of file RModel.cxx.
void TMVA::Experimental::SOFIE::RModel::Initialize | ( | const std::map< std::string, size_t > & | inputParams, |
bool | verbose = false |
||
) |
Definition at line 290 of file RModel.cxx.
Definition at line 281 of file RModel.cxx.
void TMVA::Experimental::SOFIE::RModel::InitializeSubGraph | ( | std::shared_ptr< RModel > | graph | ) |
Definition at line 378 of file RModel.cxx.
bool TMVA::Experimental::SOFIE::RModel::IsDynamicTensor | ( | const std::string & | name | ) | const |
Definition at line 193 of file RModel.cxx.
bool TMVA::Experimental::SOFIE::RModel::IsInitializedTensor | ( | const std::string & | name | ) | const |
Definition at line 188 of file RModel.cxx.
bool TMVA::Experimental::SOFIE::RModel::IsInputTensor | ( | const std::string & | name | ) | const |
Definition at line 197 of file RModel.cxx.
Definition at line 39 of file RModel.cxx.
void TMVA::Experimental::SOFIE::RModel::OutputGenerated | ( | std::string | filename = "" , |
bool | append = false |
||
) |
Definition at line 1081 of file RModel.cxx.
void TMVA::Experimental::SOFIE::RModel::PrintDynamicTensors | ( | ) |
Definition at line 1018 of file RModel.cxx.
void TMVA::Experimental::SOFIE::RModel::PrintInitializedTensors | ( | ) |
Definition at line 985 of file RModel.cxx.
void TMVA::Experimental::SOFIE::RModel::PrintIntermediateTensors | ( | ) |
Definition at line 1003 of file RModel.cxx.
void TMVA::Experimental::SOFIE::RModel::PrintOutputTensors | ( | ) |
Definition at line 1033 of file RModel.cxx.
void TMVA::Experimental::SOFIE::RModel::PrintRequiredInputTensors | ( | ) |
Definition at line 955 of file RModel.cxx.
void TMVA::Experimental::SOFIE::RModel::ReadInitializedTensorsFromFile | ( | long | pos | ) |
Definition at line 761 of file RModel.cxx.
|
inline |
Definition at line 164 of file RModel.hxx.
void TMVA::Experimental::SOFIE::RModel::SetNotWritableInitializedTensor | ( | const std::string & | tensor_name | ) |
Definition at line 273 of file RModel.cxx.
void TMVA::Experimental::SOFIE::RModel::UpdateInitializedTensor | ( | std::string | tensor_name, |
ETensorType | type, | ||
std::vector< std::size_t > | shape, | ||
std::shared_ptr< void > | data | ||
) |
Definition at line 255 of file RModel.cxx.
void TMVA::Experimental::SOFIE::RModel::UpdateOutputTensorList | ( | std::vector< std::string > | curr_output_tensor, |
std::vector< std::string > | modify_output_tensor | ||
) |
Definition at line 248 of file RModel.cxx.
|
inline |
Definition at line 184 of file RModel.hxx.
|
inline |
Definition at line 57 of file RModel.hxx.
long TMVA::Experimental::SOFIE::RModel::WriteInitializedTensorsToFile | ( | std::string | filename = "" | ) |
Definition at line 847 of file RModel.cxx.
|
private |
Definition at line 18 of file RModel.hxx.
|
private |
Definition at line 26 of file RModel.hxx.
|
private |
Definition at line 24 of file RModel.hxx.
|
private |
Definition at line 22 of file RModel.hxx.
|
private |
Definition at line 30 of file RModel.hxx.
|
private |
Definition at line 25 of file RModel.hxx.
|
private |
Definition at line 15 of file RModel.hxx.
|
private |
Definition at line 16 of file RModel.hxx.
|
private |
Definition at line 32 of file RModel.hxx.
|
private |
Definition at line 29 of file RModel.hxx.
|
private |
Definition at line 35 of file RModel.hxx.
|
private |
Definition at line 19 of file RModel.hxx.
|
private |
Definition at line 23 of file RModel.hxx.
|
private |
Definition at line 28 of file RModel.hxx.
|
private |
! sub-graph models (transient)
Definition at line 34 of file RModel.hxx.
|
private |
Definition at line 17 of file RModel.hxx.
|
private |
Definition at line 37 of file RModel.hxx.