Go to the documentation of this file. 1 #ifndef HALIDE_DEVICE_INTERFACE_H
2 #define HALIDE_DEVICE_INTERFACE_H
23 const char *error_site =
nullptr);
DeviceAPI get_default_device_api_for_target(const Target &t)
Get the specific DeviceAPI that Halide would select when presented with DeviceAPI::Default_GPU for a ...
bool host_supports_target_device(const Target &t)
This attempts to sniff whether a given Target (and its implied DeviceAPI) is usable on the current ho...
const halide_device_interface_t * get_device_interface_for_device_api(DeviceAPI d, const Target &t=get_jit_target_from_environment(), const char *error_site=nullptr)
Gets the appropriate halide_device_interface_t * for a DeviceAPI.
This file defines the class FunctionDAG, which is our representation of a Halide pipeline,...
@ Internal
Not visible externally, similar to 'static' linkage in C.
Expr make_device_interface_call(DeviceAPI device_api, MemoryType memory_type=MemoryType::Auto)
Get an Expr which evaluates to the device interface for the given device api at runtime.
Target get_jit_target_from_environment()
Return the target that Halide will use for jit-compilation.
@ Auto
Let Halide select a storage type automatically.
Each GPU API provides a halide_device_interface_t struct pointing to the code that manages device all...
MemoryType
An enum describing different address spaces to be used with Func::store_in.
DeviceAPI
An enum describing a type of device API.