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

#include <rtc.h>

Collaboration diagram for tc::CudaRTCFunction:

Public Member Functions

 ~CudaRTCFunction ()
 
Duration Launch (const std::array< size_t, 3 > &grid, const std::array< size_t, 3 > &block, unsigned int shared_mem, cudaStream_t stream, std::vector< int > params, std::vector< void * > outputs, std::vector< const void * > inputs, bool profile=false) const
 
void clear ()
 

Static Public Member Functions

static std::shared_ptr
< CudaRTCFunction
Compile (const std::string &name, const std::string &source)
 

Private Member Functions

 CudaRTCFunction ()
 

Private Attributes

std::unordered_map< size_t,
CUmodule > 
perGpuModule_
 
std::unordered_map< size_t,
CUfunction > 
perGpuKernel_
 
std::string specializedName
 
std::vector< char > nvrtc_ptx
 
bool cleared_
 

Constructor & Destructor Documentation

tc::CudaRTCFunction::CudaRTCFunction ( )
private
tc::CudaRTCFunction::~CudaRTCFunction ( )

Member Function Documentation

void tc::CudaRTCFunction::clear ( )
static std::shared_ptr<CudaRTCFunction> tc::CudaRTCFunction::Compile ( const std::string &  name,
const std::string &  source 
)
static
Duration tc::CudaRTCFunction::Launch ( const std::array< size_t, 3 > &  grid,
const std::array< size_t, 3 > &  block,
unsigned int  shared_mem,
cudaStream_t  stream,
std::vector< int >  params,
std::vector< void * >  outputs,
std::vector< const void * >  inputs,
bool  profile = false 
) const

Member Data Documentation

bool tc::CudaRTCFunction::cleared_
private
std::vector<char> tc::CudaRTCFunction::nvrtc_ptx
private
std::unordered_map<size_t, CUfunction> tc::CudaRTCFunction::perGpuKernel_
mutableprivate
std::unordered_map<size_t, CUmodule> tc::CudaRTCFunction::perGpuModule_
mutableprivate
std::string tc::CudaRTCFunction::specializedName
private

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