DPC++ Runtime
Runtime libraries for oneAPI DPC++
kernel.hpp File Reference
#include <dlfcn.h>
#include <fstream>
#include <image.hpp>
#include <random>
#include <sycl/info/info_desc.hpp>
#include <sycl/nd_range.hpp>
#include <sycl/queue.hpp>
Include dependency graph for kernel.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  syclcompat::kernel_function_info
 
class  syclcompat::kernel_library
 
class  syclcompat::kernel_function
 

Namespaces

 syclcompat
 
 syclcompat::detail
 Atomic extension to implement standard APIs in std::atomic.
 

Typedefs

typedef void(* syclcompat::kernel_functor) (sycl::queue &, const sycl::nd_range< 3 > &, unsigned int, void **, void **)
 

Functions

static void syclcompat::get_kernel_function_info (kernel_function_info *kernel_info, const void *function)
 
static kernel_function_info syclcompat::get_kernel_function_info (const void *function)
 
static fs::path syclcompat::detail::write_data_to_file (char const *const data, size_t size)
 Write data to temporary file and return absolute path to temporary file. More...
 
static uint16_t syclcompat::detail::extract16 (unsigned char const *const ptr)
 
static uint32_t syclcompat::detail::extract32 (unsigned char const *const ptr)
 
static uint64_t syclcompat::detail::extract64 (unsigned char const *const ptr)
 
static uint64_t syclcompat::detail::get_lib_size (char const *const blob)
 
static kernel_library syclcompat::detail::load_dl_from_data (char const *const data, size_t size)
 
static kernel_library syclcompat::load_kernel_library (const std::string &name)
 Load kernel library and return a handle to use the library. More...
 
static kernel_library syclcompat::load_kernel_library_mem (char const *const image)
 Load kernel library whose image is alreay in memory and return a handle to use the library. More...
 
static void syclcompat::unload_kernel_library (const kernel_library &library)
 Unload kernel library. More...
 
static kernel_function syclcompat::get_kernel_function (kernel_library &library, const std::string &name)
 Find kernel function in a kernel library and return its address. More...
 
static void syclcompat::invoke_kernel_function (kernel_function &function, sycl::queue &queue, sycl::range< 3 > group_range, sycl::range< 3 > local_range, unsigned int local_mem_size, void **kernel_params, void **extra)
 Invoke a kernel function. More...