Halide  17.0.2
Halide compiler and libraries
HalideRuntimeVulkan.h File Reference

Routines specific to the Halide Vulkan runtime. More...

#include "HalideRuntime.h"

Go to the source code of this file.

Macros

#define HALIDE_RUNTIME_VULKAN
 

Functions

const struct halide_device_interface_thalide_vulkan_device_interface ()
 
int halide_vulkan_acquire_context (void *user_context, struct halide_vulkan_memory_allocator **allocator, struct VkInstance_T **instance, struct VkDevice_T **device, struct VkPhysicalDevice_T **physical_device, uint64_t *command_pool, struct VkQueue_T **queue, uint32_t *queue_family_index, bool create=true)
 
int halide_vulkan_release_context (void *user_context, struct VkInstance_T *instance, struct VkDevice_T *device, struct VkQueue_T *queue)
 
void halide_vulkan_set_allocation_callbacks (const struct VkAllocationCallbacks *callbacks)
 
const struct VkAllocationCallbackshalide_vulkan_get_allocation_callbacks (void *user_context)
 
void halide_vulkan_set_layer_names (const char *n)
 
const char * halide_vulkan_get_layer_names (void *user_context)
 
void halide_vulkan_set_extension_names (const char *n)
 
const char * halide_vulkan_get_extension_names (void *user_context)
 
void halide_vulkan_set_device_type (const char *n)
 
const char * halide_vulkan_get_device_type (void *user_context)
 
void halide_vulkan_set_build_options (const char *n)
 
const char * halide_vulkan_get_build_options (void *user_context)
 
int halide_vulkan_initialize_kernels (void *user_context, void **state_ptr, const char *src, int size)
 These are forward declared here to allow clients to override the Halide Vulkan runtime. More...
 
int halide_vulkan_run (void *user_context, void *state_ptr, const char *entry_name, int blocksX, int blocksY, int blocksZ, int threadsX, int threadsY, int threadsZ, int shared_mem_bytes, size_t arg_sizes[], void *args[], int8_t arg_is_buffer[])
 These are forward declared here to allow clients to override the Halide Vulkan runtime. More...
 
void halide_vulkan_finalize_kernels (void *user_context, void *state_ptr)
 These are forward declared here to allow clients to override the Halide Vulkan runtime. More...
 

Detailed Description

Routines specific to the Halide Vulkan runtime.

Definition in file HalideRuntimeVulkan.h.

Macro Definition Documentation

◆ HALIDE_RUNTIME_VULKAN

#define HALIDE_RUNTIME_VULKAN

Definition at line 18 of file HalideRuntimeVulkan.h.

Function Documentation

◆ halide_vulkan_device_interface()

const struct halide_device_interface_t* halide_vulkan_device_interface ( )

◆ halide_vulkan_initialize_kernels()

int halide_vulkan_initialize_kernels ( void *  user_context,
void **  state_ptr,
const char *  src,
int  size 
)

These are forward declared here to allow clients to override the Halide Vulkan runtime.

Do not call them.

◆ halide_vulkan_run()

int halide_vulkan_run ( void *  user_context,
void *  state_ptr,
const char *  entry_name,
int  blocksX,
int  blocksY,
int  blocksZ,
int  threadsX,
int  threadsY,
int  threadsZ,
int  shared_mem_bytes,
size_t  arg_sizes[],
void *  args[],
int8_t  arg_is_buffer[] 
)

These are forward declared here to allow clients to override the Halide Vulkan runtime.

Do not call them.

◆ halide_vulkan_finalize_kernels()

void halide_vulkan_finalize_kernels ( void *  user_context,
void *  state_ptr 
)

These are forward declared here to allow clients to override the Halide Vulkan runtime.

Do not call them.

◆ halide_vulkan_acquire_context()

int halide_vulkan_acquire_context ( void *  user_context,
struct halide_vulkan_memory_allocator **  allocator,
struct VkInstance_T **  instance,
struct VkDevice_T **  device,
struct VkPhysicalDevice_T **  physical_device,
uint64_t command_pool,
struct VkQueue_T **  queue,
uint32_t queue_family_index,
bool  create = true 
)

◆ halide_vulkan_release_context()

int halide_vulkan_release_context ( void *  user_context,
struct VkInstance_T *  instance,
struct VkDevice_T *  device,
struct VkQueue_T *  queue 
)

◆ halide_vulkan_set_allocation_callbacks()

void halide_vulkan_set_allocation_callbacks ( const struct VkAllocationCallbacks callbacks)

◆ halide_vulkan_get_allocation_callbacks()

const struct VkAllocationCallbacks* halide_vulkan_get_allocation_callbacks ( void *  user_context)

Definition at line 1372 of file vulkan_memory.h.

◆ halide_vulkan_set_layer_names()

void halide_vulkan_set_layer_names ( const char *  n)

◆ halide_vulkan_get_layer_names()

const char* halide_vulkan_get_layer_names ( void *  user_context)

Definition at line 281 of file vulkan_extensions.h.

◆ halide_vulkan_set_extension_names()

void halide_vulkan_set_extension_names ( const char *  n)

◆ halide_vulkan_get_extension_names()

const char* halide_vulkan_get_extension_names ( void *  user_context)

Definition at line 291 of file vulkan_extensions.h.

◆ halide_vulkan_set_device_type()

void halide_vulkan_set_device_type ( const char *  n)

◆ halide_vulkan_get_device_type()

const char* halide_vulkan_get_device_type ( void *  user_context)

Definition at line 301 of file vulkan_extensions.h.

◆ halide_vulkan_set_build_options()

void halide_vulkan_set_build_options ( const char *  n)

◆ halide_vulkan_get_build_options()

const char* halide_vulkan_get_build_options ( void *  user_context)

Definition at line 311 of file vulkan_extensions.h.