NebulaStream  0.6.213
NebulaStream is a data and application management framework for the internet of things
jitify::KernelLauncher Class Reference

#include <jitify.hpp>

Public Member Functions

 KernelLauncher (KernelInstantiation const &kernel_inst, dim3 grid, dim3 block, unsigned int smem=0, cudaStream_t stream=0)
 
CUresult launch (std::vector< void * > arg_ptrs=std::vector< void * >(), jitify::detail::vector< std::string > arg_types=0) const
 
void safe_launch (std::vector< void * > arg_ptrs=std::vector< void * >(), jitify::detail::vector< std::string > arg_types=0) const
 
template<typename... ArgTypes>
CUresult operator() (const ArgTypes &... args) const
 
template<typename... ArgTypes>
CUresult launch (const ArgTypes &... args) const
 
template<typename... ArgTypes>
void safe_launch (const ArgTypes &... args) const
 

Detailed Description

An object representing a configured and instantiated kernel ready for launching.

Constructor & Destructor Documentation

◆ KernelLauncher()

jitify::KernelLauncher::KernelLauncher ( KernelInstantiation const &  kernel_inst,
dim3  grid,
dim3  block,
unsigned int  smem = 0,
cudaStream_t  stream = 0 
)
inline

Member Function Documentation

◆ launch() [1/2]

template<typename... ArgTypes>
CUresult jitify::KernelLauncher::launch ( const ArgTypes &...  args) const
inline

Launch the kernel.

Parameters
argsFunction arguments for the kernel.

References launch().

Here is the call graph for this function:

◆ launch() [2/2]

CUresult jitify::KernelLauncher::launch ( std::vector< void * >  arg_ptrs = std::vector<void*>(),
jitify::detail::vector< std::string >  arg_types = 0 
) const
inline

Launch the kernel.

Parameters
arg_ptrsA vector of pointers to each function argument for the kernel.
arg_typesA vector of function argument types represented as code-strings. This parameter is optional and is only used to print out the function signature.

Referenced by launch(), and operator()().

Here is the caller graph for this function:

◆ operator()()

template<typename... ArgTypes>
CUresult jitify::KernelLauncher::operator() ( const ArgTypes &...  args) const
inline

Launch the kernel.

See also
launch

References launch().

Here is the call graph for this function:

◆ safe_launch() [1/2]

template<typename... ArgTypes>
void jitify::KernelLauncher::safe_launch ( const ArgTypes &...  args) const
inline

Launch the kernel and check for cuda errors.

Parameters
argsFunction arguments for the kernel.

References safe_launch().

Here is the call graph for this function:

◆ safe_launch() [2/2]

void jitify::KernelLauncher::safe_launch ( std::vector< void * >  arg_ptrs = std::vector<void*>(),
jitify::detail::vector< std::string >  arg_types = 0 
) const
inline

Launch the kernel and check for cuda errors.

See also
launch

Referenced by safe_launch().

Here is the caller graph for this function:

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