Tensor Comprehensions
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
tc::TcExecutor Class Reference

#include <tc_executor.h>

Collaboration diagram for tc::TcExecutor:

Classes

struct  TcExecutionInfo
 

Public Member Functions

 TcExecutor (const std::string &TCDefinition, const std::vector< const DLTensor * > &inputsInfo)
 
 TcExecutor (lang::TreeRef TCDefinition, const std::vector< const DLTensor * > &inputsInfo)
 
 ~TcExecutor ()
 
 TcExecutor (TcExecutor &&)=delete
 
TcExecutoroperator= (TcExecutor &&)=delete
 
 TcExecutor (const TcExecutor &)=delete
 
TcExecutoroperator= (const TcExecutor &)=delete
 
std::vector< const DLTensor * > inferOutputTensorInfo ()
 
void compile (const tc::MappingOptions &options)
 
Duration run (const std::vector< const DLTensor * > &inputs, const std::vector< DLTensor * > &outputs, bool profile=false) const
 
void uncheckedRun (const std::vector< const void * > &inputs, const std::vector< void * > &outputs) const
 
std::string getCudaSource ()
 
bool hasRTCFun ()
 
void clearRTC ()
 
std::string kernelName () const
 
Grid grid () const
 
Block block () const
 

Static Public Attributes

static const size_t InvalidHandle = std::numeric_limits<size_t>::max()
 

Private Member Functions

void compileWithTcMapper ()
 
void checkInputsCompliant (const std::vector< const DLTensor * > &inputsInfo) const
 

Private Attributes

tc2halide::HalideComponents halideComponents_
 
TcExecutionInfo execInfo_
 
lang::TreeRef tcTree_
 
isl::ctx ctx_
 

Constructor & Destructor Documentation

tc::TcExecutor::TcExecutor ( const std::string &  TCDefinition,
const std::vector< const DLTensor * > &  inputsInfo 
)
tc::TcExecutor::TcExecutor ( lang::TreeRef  TCDefinition,
const std::vector< const DLTensor * > &  inputsInfo 
)
tc::TcExecutor::~TcExecutor ( )
tc::TcExecutor::TcExecutor ( TcExecutor &&  )
delete
tc::TcExecutor::TcExecutor ( const TcExecutor )
delete

Member Function Documentation

Block tc::TcExecutor::block ( ) const
inline
void tc::TcExecutor::checkInputsCompliant ( const std::vector< const DLTensor * > &  inputsInfo) const
private
void tc::TcExecutor::clearRTC ( )
inline
void tc::TcExecutor::compile ( const tc::MappingOptions options)
void tc::TcExecutor::compileWithTcMapper ( )
private
std::string tc::TcExecutor::getCudaSource ( )
inline
Grid tc::TcExecutor::grid ( ) const
inline
bool tc::TcExecutor::hasRTCFun ( )
inline
std::vector<const DLTensor*> tc::TcExecutor::inferOutputTensorInfo ( )
std::string tc::TcExecutor::kernelName ( ) const
inline
TcExecutor& tc::TcExecutor::operator= ( TcExecutor &&  )
delete
TcExecutor& tc::TcExecutor::operator= ( const TcExecutor )
delete
Duration tc::TcExecutor::run ( const std::vector< const DLTensor * > &  inputs,
const std::vector< DLTensor * > &  outputs,
bool  profile = false 
) const
void tc::TcExecutor::uncheckedRun ( const std::vector< const void * > &  inputs,
const std::vector< void * > &  outputs 
) const

Member Data Documentation

isl::ctx tc::TcExecutor::ctx_
mutableprivate
TcExecutionInfo tc::TcExecutor::execInfo_
private
tc2halide::HalideComponents tc::TcExecutor::halideComponents_
private
const size_t tc::TcExecutor::InvalidHandle = std::numeric_limits<size_t>::max()
static
lang::TreeRef tc::TcExecutor::tcTree_
private

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