#[repr(i32)]pub enum DLDeviceType {
Show 15 variants
kDLCPU = 1,
kDLCUDA = 2,
kDLCUDAHost = 3,
kDLOpenCL = 4,
kDLVulkan = 7,
kDLMetal = 8,
kDLVPI = 9,
kDLROCM = 10,
kDLROCMHost = 11,
kDLExtDev = 12,
kDLCUDAManaged = 13,
kDLOneAPI = 14,
kDLWebGPU = 15,
kDLHexagon = 16,
kDLMAIA = 17,
}Variants§
kDLCPU = 1
\brief CPU device
kDLCUDA = 2
\brief CUDA GPU device
kDLCUDAHost = 3
\brief Pinned CUDA CPU memory by cudaMallocHost
kDLOpenCL = 4
\brief OpenCL devices.
kDLVulkan = 7
\brief Vulkan buffer for next generation graphics.
kDLMetal = 8
\brief Metal for Apple GPU.
kDLVPI = 9
\brief Verilog simulator buffer
kDLROCM = 10
\brief ROCm GPUs for AMD GPUs
kDLROCMHost = 11
\brief Pinned ROCm CPU memory allocated by hipMallocHost
kDLExtDev = 12
\brief Reserved extension device type, used for quickly test extension device The semantics can differ depending on the implementation.
kDLCUDAManaged = 13
\brief CUDA managed/unified memory allocated by cudaMallocManaged
kDLOneAPI = 14
\brief Unified shared memory allocated on a oneAPI non-partititioned device. Call to oneAPI runtime is required to determine the device type, the USM allocation type and the sycl context it is bound to.
kDLWebGPU = 15
\brief GPU support for next generation WebGPU standard.
kDLHexagon = 16
\brief Qualcomm Hexagon DSP
kDLMAIA = 17
\brief Microsoft MAIA devices
Trait Implementations§
Source§impl Clone for DLDeviceType
impl Clone for DLDeviceType
Source§fn clone(&self) -> DLDeviceType
fn clone(&self) -> DLDeviceType
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more