Struct QnnGpu_MemoryObject_t

Struct Documentation

struct QnnGpu_MemoryObject_t

A QNN GPU struct specifying a memory object This struct is used with the following kernel argument types:

  • QNN_GPU_KERNEL_ARG_TYPE_OP_INPUT_READ

  • QNN_GPU_KERNEL_ARG_TYPE_OP_INPUT_READWRITE

  • QNN_GPU_KERNEL_ARG_TYPE_OP_OUTPUT_WRITE

  • QNN_GPU_KERNEL_ARG_TYPE_INTERNAL_READ

  • QNN_GPU_KERNEL_ARG_TYPE_INTERNAL_READWRITE

  • QNN_GPU_KERNEL_ARG_TYPE_INTERNAL_WRITE

Public Members

QnnGpu_MemoryObjectType_t type

Type of memory object.

Qnn_DataType_t dataType

Data type of the memory object.

uint32_t *dimensions

Memory object dimensions

Size is numDimensions. Uses the following type dependent format:

QNN_GPU_MEM_OBJ_TYPE_BUFFER -> {numElements}

QNN_GPU_MEM_OBJ_TYPE_IMAGE2D -> {height,width}

QNN_GPU_MEM_OBJ_TYPE_IMAGE2D_ARRAY -> {height,width,array_size}

QNN_GPU_MEM_OBJ_TYPE_AGGREGATED_IMAGE2D -> {num_batches,height,width}

QNN_GPU_MEM_OBJ_TYPE_AGGREGATED_IMAGE2D_ARRAY -> {num_batches,height,width,array_size}

uint32_t *offsets

Memory object offsets

Size is numDimensions.

Indicates where the data store starts in the memory object.

uint32_t numDimensions

Number of dimensions in memory object

Size is numDimensions. Has the following type dependent size:

QNN_GPU_MEM_OBJ_TYPE_BUFFER -> 1

QNN_GPU_MEM_OBJ_TYPE_IMAGE2D -> 2

QNN_GPU_MEM_OBJ_TYPE_IMAGE2D_ARRAY -> 3

QNN_GPU_MEM_OBJ_TYPE_AGGREGATED_IMAGE2D -> 3

QNN_GPU_MEM_OBJ_TYPE_AGGREGATED_IMAGE2D_ARRAY -> 4

QnnGpu_MemoryLayout_t layout

Memory object layout

Op package specific layout identifier

Default is QNN_GPU_MEM_LAYOUT_UNDEFINED if not already specified by a prior operation

QnnGpu_BlockEncodingInfo_t blockEncodingInfo

Block Quantization Tensor Information.

const char *name

Memory object name used to propagate the tensor name to Backend.