NebulaStream
0.6.213
NebulaStream is a data and application management framework for the internet of things
|
#include <jitify.hpp>
Public Types | |
enum | { DEFAULT_CACHE_SIZE = 128 } |
Public Member Functions | |
JitCache (size_t cache_size=DEFAULT_CACHE_SIZE) | |
Program | program (std::string source, jitify::detail::vector< std::string > headers=0, jitify::detail::vector< std::string > options=0, file_callback_type file_callback=0) |
Friends | |
class | Program |
An object that manages a cache of JIT-compiled CUDA kernels.
anonymous enum |
JitCache constructor.
cache_size | The number of kernels to hold in the cache before overwriting the least-recently-used ones. |
Enumerator | |
---|---|
DEFAULT_CACHE_SIZE |
|
inline |
|
inline |
Create a program.
source | A string containing either the source filename or the source itself; in the latter case, the first line must be the name of the program. |
headers | A vector of strings representing the source of each header file required by the program. Each entry can be either the header filename or the header source itself; in the latter case, the first line must be the name of the header (i.e., the name by which the header is #included). |
options | A vector of options to be passed to the NVRTC compiler. Include paths specified with -I are added to the search paths used by Jitify. The environment variable JITIFY_OPTIONS can also be used to define additional options. |
file_callback | A pointer to a callback function that is invoked whenever a source file needs to be loaded. Inside this function, the user can either load/specify the source themselves or defer to Jitify's file-loading mechanisms. |
#include
directives and automatically adds them to the set of headers needed by the program. If a #include
directive references a header that cannot be found, the directive is automatically removed from the source code to prevent immediate compilation failure. This may result in compilation errors if the header was required by the program.References Program.