Skip to main content

Module drv

Module drv 

Source
Expand description

Minimal ze_loader driver: zeInit, driver walk, device walk, zeDeviceGetProperties. Enough for the planner; kernel launch lives in higher layers.

drop(sym) on a libloading::Symbol is intentional — it releases the borrow on the Library so the next lib.get(...) can proceed. Symbol is Copy and doesn’t impl Drop, but the borrow lives in its lifetime parameter, which drop does end. We silence the spurious lint module-wide.

Everything is loaded via libloading so the crate compiles on hosts without Level Zero installed; the backend simply reports unavailable.

Structs§

EnumeratedDevice
Loaded
ZeCommandListDesc
ZeCommandQueueDesc
ZeContextDesc
ZeDeviceMemAllocDesc
ZeDeviceProperties
ZeDeviceUuid
ZeGroupCount
ZeHostMemAllocDesc
ZeKernelDesc
ZeModuleDesc

Constants§

ZE_COMMAND_QUEUE_MODE_DEFAULT
ZE_COMMAND_QUEUE_PRIORITY_NORMAL
ZE_DEVICE_TYPE_CPU
ZE_DEVICE_TYPE_FPGA
ZE_DEVICE_TYPE_GPU
ZE_DEVICE_TYPE_MCA
ZE_DEVICE_TYPE_VPU
ZE_MAX_DEVICE_NAME
ZE_MODULE_FORMAT_IL_SPIRV
ZE_MODULE_FORMAT_NATIVE
ZE_RESULT_SUCCESS
ZE_STRUCTURE_TYPE_COMMAND_LIST_DESC
ZE_STRUCTURE_TYPE_COMMAND_QUEUE_DESC
ZE_STRUCTURE_TYPE_CONTEXT_DESC
ZE_STRUCTURE_TYPE_DEVICE_MEM_ALLOC_DESC
ZE_STRUCTURE_TYPE_DEVICE_PROPERTIES
ZE_STRUCTURE_TYPE_HOST_MEM_ALLOC_DESC
ZE_STRUCTURE_TYPE_KERNEL_DESC
ZE_STRUCTURE_TYPE_MODULE_DESC

Functions§

enumerate
is_available

Type Aliases§

ZeCommandListAppendLaunchKernelFn
ZeCommandListAppendMemoryCopyFn
ZeCommandListCloseFn
ZeCommandListCreateFn
ZeCommandListDestroyFn
ZeCommandListHandle
ZeCommandListResetFn
ZeCommandQueueCreateFn
ZeCommandQueueDestroyFn
ZeCommandQueueExecuteCommandListsFn
ZeCommandQueueHandle
ZeCommandQueueSynchronizeFn
ZeContextCreateFn
ZeContextDestroyFn
ZeContextHandle
ZeDeviceHandle
ZeDriverHandle
ZeKernelCreateFn
ZeKernelDestroyFn
ZeKernelHandle
ZeKernelSetArgumentValueFn
ZeKernelSetGroupSizeFn
ZeMemAllocDeviceFn
ZeMemAllocSharedFn
ZeMemFreeFn
ZeModuleCreateFn
ZeModuleDestroyFn
ZeModuleHandle
ZeResult