NebulaStream
0.6.213
NebulaStream is a data and application management framework for the internet of things
|
#include <jitify.hpp>
Public Member Functions | |
KernelInstantiation (Kernel const &kernel, std::vector< std::string > const &template_args) | |
operator CUfunction () const | |
KernelLauncher | operator() (dim3 grid, dim3 block, unsigned int smem=0, cudaStream_t stream=0) const |
KernelLauncher | configure (dim3 grid, dim3 block, unsigned int smem=0, cudaStream_t stream=0) const |
KernelLauncher | configure_1d_max_occupancy (int max_block_size=0, unsigned int smem=0, CUoccupancyB2DSize smem_callback=0, cudaStream_t stream=0, unsigned int flags=0) const |
int | get_func_attribute (CUfunction_attribute attribute) const |
void | set_func_attribute (CUfunction_attribute attribute, int value) const |
CUdeviceptr | get_constant_ptr (const char *name, size_t *size=nullptr) const |
CUdeviceptr | get_global_ptr (const char *name, size_t *size=nullptr) const |
template<typename T > | |
CUresult | get_global_array (const char *name, T *data, size_t count, CUstream stream=0) const |
template<typename T > | |
CUresult | get_global_value (const char *name, T *value, CUstream stream=0) const |
template<typename T > | |
CUresult | set_global_array (const char *name, const T *data, size_t count, CUstream stream=0) const |
template<typename T > | |
CUresult | set_global_value (const char *name, const T &value, CUstream stream=0) const |
const std::string & | mangled_name () const |
const std::string & | ptx () const |
const std::vector< std::string > & | link_files () const |
const std::vector< std::string > & | link_paths () const |
Friends | |
class | KernelLauncher |
An object representing a kernel instantiation made up of a Kernel and template arguments.
|
inline |
|
inline |
Configure the kernel launch.
grid | The thread grid dimensions for the launch. |
block | The thread block dimensions for the launch. |
smem | The amount of shared memory to dynamically allocate, in bytes. |
stream | The CUDA stream to launch the kernel in. |
References KernelLauncher.
Referenced by configure_1d_max_occupancy(), and operator()().
|
inline |
Configure the kernel launch with a 1-dimensional block and grid chosen automatically to maximise occupancy.
max_block_size | The upper limit on the block size, or 0 for no limit. |
smem | The amount of shared memory to dynamically allocate, in bytes. |
smem_callback | A function returning smem for a given block size (overrides smem ). |
stream | The CUDA stream to launch the kernel in. |
flags | The flags to pass to cuOccupancyMaxPotentialBlockSizeWithFlags. |
References configure().
|
inline |
|
inline |
|
inline |
|
inline |
References size().
Referenced by get_constant_ptr().
|
inline |
References get_global_array(), and magic_enum::detail::value().
|
inline |
|
inline |
|
inline |
|
inline |
Implicit conversion to the underlying CUfunction object.
|
inline |
Configure the kernel launch.
References configure().
|
inline |
|
inline |
|
inline |
|
inline |
References set_global_array(), and magic_enum::detail::value().
|
friend |
Referenced by configure().