cudla#

Note#

The cuDLA bindings require a Jetson platform with DLA hardware (Xavier or Orin). cuDLA is not available on desktop GPUs.

Functions#

cuDLA defines the following functions for DLA device management and inference.

cuda.bindings.cudla.get_version() uint64_t#
cuda.bindings.cudla.device_get_count() uint64_t#
cuda.bindings.cudla.create_device(uint64_t device, uint32_t flags) intptr_t#
cuda.bindings.cudla.destroy_device(intptr_t dev_handle)#
cuda.bindings.cudla.mem_register(
intptr_t dev_handle,
intptr_t ptr,
size_t size,
uint32_t flags,
) intptr_t#
cuda.bindings.cudla.mem_unregister(intptr_t dev_handle, intptr_t dev_ptr)#
cuda.bindings.cudla.module_load_from_memory(
intptr_t dev_handle,
p_module,
size_t module_size,
uint32_t flags,
) intptr_t#
cuda.bindings.cudla.module_get_attributes(intptr_t h_module, int attr_type)#

Query module attributes, interpreting the cudlaModuleAttribute union based on the requested attribute type.

For count attributes (NUM_INPUT_TENSORS, NUM_OUTPUT_TENSORS, NUM_OUTPUT_TASK_STATISTICS), returns an int.

For descriptor attributes (INPUT_TENSOR_DESCRIPTORS, OUTPUT_TENSOR_DESCRIPTORS, OUTPUT_TASK_STATISTICS_DESCRIPTORS), returns a list of ModuleTensorDescriptor objects.

cuda.bindings.cudla.module_unload(intptr_t h_module, uint32_t flags)#
cuda.bindings.cudla.submit_task(
intptr_t dev_handle,
intptr_t ptr_to_tasks,
uint32_t num_tasks,
intptr_t stream,
uint32_t flags,
)#
cuda.bindings.cudla.device_get_attribute(intptr_t dev_handle, int attrib)#
cuda.bindings.cudla.get_last_error(intptr_t dev_handle) int#
cuda.bindings.cudla.set_task_timeout_in_ms(intptr_t dev_handle, uint32_t timeout)#

Types#

class cuda.bindings.cudla.ExternalMemoryHandleDesc#

Empty-initialize an instance of cudlaExternalMemoryHandleDesc_t.

See also

cudlaExternalMemoryHandleDesc_t

class cuda.bindings.cudla.ExternalSemaphoreHandleDesc#

Empty-initialize an instance of cudlaExternalSemaphoreHandleDesc_t.

See also

cudlaExternalSemaphoreHandleDesc_t

class cuda.bindings.cudla.ModuleTensorDescriptor#

Empty-initialize an instance of cudlaModuleTensorDescriptor.

See also

cudlaModuleTensorDescriptor

class cuda.bindings.cudla.Fence#

Empty-initialize an instance of CudlaFence.

See also

CudlaFence

class cuda.bindings.cudla.DevAttribute#

Empty-initialize an instance of cudlaDevAttribute.

See also

cudlaDevAttribute

class cuda.bindings.cudla.ModuleAttribute#

Empty-initialize an instance of cudlaModuleAttribute.

See also

cudlaModuleAttribute

class cuda.bindings.cudla.WaitEvents#

Empty-initialize an instance of cudlaWaitEvents.

See also

cudlaWaitEvents

class cuda.bindings.cudla.SignalEvents#

Empty-initialize an instance of cudlaSignalEvents.

See also

cudlaSignalEvents

class cuda.bindings.cudla.Task#

Empty-initialize an instance of cudlaTask.

See also

cudlaTask

Enums#

class cuda.bindings.cudla.Status(
value,
names=<not given>,
*values,
module=None,
qualname=None,
type=None,
start=1,
boundary=None,
)#

See cudlaStatus.

Success = 0#
class cuda.bindings.cudla.Mode(
value,
names=<not given>,
*values,
module=None,
qualname=None,
type=None,
start=1,
boundary=None,
)#

See cudlaMode.

CUDA_DLA = 0#
STANDALONE = 1#
class cuda.bindings.cudla.ModuleAttributeType(
value,
names=<not given>,
*values,
module=None,
qualname=None,
type=None,
start=1,
boundary=None,
)#

See cudlaModuleAttributeType.

class cuda.bindings.cudla.FenceType(
value,
names=<not given>,
*values,
module=None,
qualname=None,
type=None,
start=1,
boundary=None,
)#

See cudlaFenceType.

class cuda.bindings.cudla.ModuleLoadFlags(
value,
names=<not given>,
*values,
module=None,
qualname=None,
type=None,
start=1,
boundary=None,
)#

See cudlaModuleLoadFlags.

class cuda.bindings.cudla.SubmissionFlags(
value,
names=<not given>,
*values,
module=None,
qualname=None,
type=None,
start=1,
boundary=None,
)#

See cudlaSubmissionFlags.

class cuda.bindings.cudla.AccessPermissionFlags(
value,
names=<not given>,
*values,
module=None,
qualname=None,
type=None,
start=1,
boundary=None,
)#

See cudlaAccessPermissionFlags.

class cuda.bindings.cudla.DevAttributeType(
value,
names=<not given>,
*values,
module=None,
qualname=None,
type=None,
start=1,
boundary=None,
)#

See cudlaDevAttributeType.