File QnnGpuOpPackage.h

Parent directory (include/QNN/GPU)

A header which defines the QNN GPU specialization of the File QnnOpPackage.h interface.

Definition (include/QNN/GPU/QnnGpuOpPackage.h)

Includes

Full File Listing

A header which defines the QNN GPU specialization of the QnnOpPackage.h interface.

Defines

QNN_GPU_OP_PACKAGE_SUPER_NODE_OPTIMIZATION_INIT

{                                                     \

NULL, /*operations*/                                \

NULL, /*connectionConstraints*/                     \

NULL, /*tensorConstraints*/                         \

}


QnnGpuOpPackage_SuperNodeOptimization_t initializer macro.

QNN_GPU_OP_PACKAGE_OPTIMIZATION_INIT   {                                                     \     QNN_GPU_OPTIMIZATION_TYPE_UNDEFINED

, NULL, { NULL } \

}


QnnGpuOpPackage_Optimization_t initializer macro.

QNN_GPU_BLOCK_ENCODING_INFO_INIT

{                                                   \

NULL,                      /*bqBlockSize*/    \

0u                         /*bqEncodingTensorId*/      \

}


QnnGpu_MemoryObject_t initializer macro.

QNN_GPU_MEMORY_OBJECT_INIT   {                                                   \     QNN_GPU_MEM_OBJ_TYPE_UNCLAIMED, /*type*/          \     QNN_DATATYPE_UNDEFINED

,         /*dataType*/      \

NULL,                           /*dimensions*/    \

NULL,                           /*offsets*/       \

0u,                             /*numDimensions*/ \

QNN_GPU_MEM_LAYOUT_UNDEFINED,   /*layout*/        \     QNN_GPU_BLOCK_ENCODING_INFO_INIT

/*blockEncodingInfo*/    \

}


QnnGpu_MemoryObject_t initializer macro.

QNN_GPU_TENSOR_STORAGE_TYPE_INIT

{                                      \

0u,   /*id*/                         \

NULL  /*memoryObject*/               \

}


QnnGpu_TensorStorageType_t initializer macro.

QNN_GPU_OUTPUT_CLAIM_INIT

{                               \

0u,      /*opConfigIndex*/    \

0u,      /*outputIndex*/      \

NULL     /*memoryObject*/     \

}


QnnGpu_OutputClaim_t initializer macro.

QNN_GPU_TENSOR_KERNEL_ARG_INIT

{                                    \

0u,   /*opConfigIndex*/            \

0u,   /*tensorIndex*/              \

0u    /*element*/                  \

}


QnnGpu_TensorKernelArg_t initializer macro.

QNN_GPU_DATA_KERNEL_ARG_INIT   {                                           \     QNN_GPU_KERNEL_ARG_CL_TYPE_CHAR

, /*type*/ \

{                                         \

0 /*qnnChar*/                           \

}                                         \

}


QnnGpu_DataKernelArg_t initializer macro.

QNN_GPU_LOCAL_KERNEL_ARG_INIT   { 0u /*size*/ }

QnnGpu_LocalKernelArg_t initializer macro.

QNN_GPU_KERNEL_ARG_INIT   {                                             \     QNN_GPU_KERNEL_ARG_TYPE_NULL_PTR

, /*type*/  \

{                                           \

QNN_GPU_TENSOR_KERNEL_ARG_INIT

/*tensor*/ \

}                                           \

}


QnnGpu_KernelArg_t initializer macro.

QNN_GPU_KERNEL_INIT

{                                                      \

NULL,                            /*kernelSource*/    \

0u,                              /*sourceLength*/    \

QNN_GPU_KERNEL_SOURCE_TYPE_TEXT

, /*sourceType*/      \

NULL,                            /*buildOptions*/    \

0u,                              /*globalWorkDim*/   \

{0u},                            /*globalWorkSizes*/ \

0u,                              /*localWorkDim*/    \

{0u},                            /*localWorkSizes*/  \

NULL,                            /*args*/            \

NULL,                            /*name*/            \

0u,                              /*isDynamic*/       \

NULL,                            /*tuningConfigs*/   \

NULL                             /*reserved*/        \

}


QnnGpu_Kernel_t initializer macro.

QNN_GPU_OPERATION_INIT

{                                \

NULL,     /*outputClaims*/     \

NULL,     /*memoryObjects*/    \

NULL,     /*kernels*/          \

}


QnnGpu_Operation_t initializer macro.

Enums

enum QnnGpuOpPackage_OptimizationType_t

An enum to specify the QNN GPU optimization type.

Values:

enumerator QNN_GPU_OPTIMIZATION_TYPE_UNDEFINED = 0

Undefined option only used for QNN_GPU_OP_PACKAGE_OPTIMIZATION_INIT.

enumerator QNN_GPU_OPTIMIZATION_TYPE_SUPER_NODE = 2

Super node optimization.

enum QnnGpuOpPackage_TensorConstraintSource_t

An enum to specify the source of a tensor in an op def for a tensor constraint.

Values:

enumerator QNN_GPU_OPTIMIZATION_SUPER_NODE_TENSOR_SOURCE_OUTPUT = 1

Tensor is an op def output.

enumerator QNN_GPU_OPTIMIZATION_SUPER_NODE_TENSOR_SOURCE_INPUT = 2
enum QnnGpuOpPackage_TensorConstraintType_t

An enum to specify the tensor constraint type.

Values:

enumerator QNN_GPU_OPTIMIZATION_SUPER_NODE_TENSOR_CONSTRAINT_DATA_TYPE = 1

Add a Qnn_DataType_t to the whitelist of allowable types. If no data type constraint is present for a tensor, all data types are allowed.

enumerator QNN_GPU_OPTIMIZATION_SUPER_NODE_TENSOR_CONSTRAINT_RANK = 2

Tensor must match it’s rank.

enumerator QNN_GPU_OPTIMIZATION_SUPER_NODE_TENSOR_CONSTRAINT_DIMENSION = 3

Tensor must match one of it’s dimensions.

enumerator QNN_GPU_OPTIMIZATION_SUPER_NODE_TENSOR_CONSTRAINT_TENSOR_TYPE = 4

Add a Qnn_TensorType_t to the whitelist of allowable tensor types. If no tensor type constraint is present for a tensor, all types are allowed.

enum QnnGpu_MemoryObjectType_t

An enum to specify the QNN GPU memory object type.

Values:

enumerator QNN_GPU_MEM_OBJ_TYPE_HOST = 0

Host memory, only used for Qnn_Param_t tensors.

enumerator QNN_GPU_MEM_OBJ_TYPE_BUFFER = 1

GPU driver buffer memory object.

enumerator QNN_GPU_MEM_OBJ_TYPE_IMAGE2D = 2

GPU driver image 2D memory object.

enumerator QNN_GPU_MEM_OBJ_TYPE_IMAGE2D_ARRAY = 3

GPU driver image 2D array memory object.

enumerator QNN_GPU_MEM_OBJ_TYPE_AGGREGATED_IMAGE2D = 4

Aggregation of GPU driver image 2D memory objects.

enumerator QNN_GPU_MEM_OBJ_TYPE_AGGREGATED_IMAGE2D_ARRAY = 5

Aggregation of GPU driver image 2D array memory objects.

enumerator QNN_GPU_MEM_OBJ_TYPE_UNCLAIMED = 6

Memory type is unclaimed and can be specified by the op package via the QnnGpu_OutputClaim_t struct

enum QnnGpu_MemoryLayout_t

An enum to specify the QNN GPU memory layout.

Values:

enumerator QNN_GPU_MEM_LAYOUT_HWC = 0

HWC layout.

enumerator QNN_GPU_MEM_LAYOUT_HCW = 1

HCW layout.

enumerator QNN_GPU_MEM_LAYOUT_CHW = 2

CHW layout.

enumerator QNN_GPU_MEM_LAYOUT_UNDEFINED = 0x7FFFFFFF

Undefined.

enum QnnGpu_KernelArgType_t

An enum to specify the kernel argument type.

Values:

enumerator QNN_GPU_KERNEL_ARG_TYPE_OP_INPUT_READ = 0

Operation input tensor used as kernel input.

enumerator QNN_GPU_KERNEL_ARG_TYPE_OP_INPUT_READWRITE = 1

Operation input tensor used as kernel output.

enumerator QNN_GPU_KERNEL_ARG_TYPE_OP_OUTPUT_WRITE = 2

Operation output tensor used as kernel output.

enumerator QNN_GPU_KERNEL_ARG_TYPE_INTERNAL_READ = 3

Operation internal tensor used as kernel input.

enumerator QNN_GPU_KERNEL_ARG_TYPE_INTERNAL_READWRITE = 4

Operation internal tensor used as kernel input/output.

enumerator QNN_GPU_KERNEL_ARG_TYPE_INTERNAL_WRITE = 5

Operation internal tensor used as kernel output.

enumerator QNN_GPU_KERNEL_ARG_TYPE_DATA = 6

Plain old data kernel argument.

enumerator QNN_GPU_KERNEL_ARG_TYPE_LOCAL = 7

Local memory kernel argument.

enumerator QNN_GPU_KERNEL_ARG_TYPE_NULL_PTR = 8

Null pointer kernel argument.

enumerator QNN_GPU_KERNEL_ARG_TYPE_OP_TENSOR_PARAM = 9

Operation tensor parameter used as kernel input.

enum QnnGpu_DataKernelArgType_t

An enum to specify the kernel data argument type.

Values:

enumerator QNN_GPU_KERNEL_ARG_CL_TYPE_CHAR = 0
enumerator QNN_GPU_KERNEL_ARG_CL_TYPE_UCHAR = 1
enumerator QNN_GPU_KERNEL_ARG_CL_TYPE_SHORT = 2
enumerator QNN_GPU_KERNEL_ARG_CL_TYPE_USHORT = 3
enumerator QNN_GPU_KERNEL_ARG_CL_TYPE_INT = 4
enumerator QNN_GPU_KERNEL_ARG_CL_TYPE_UINT = 5
enumerator QNN_GPU_KERNEL_ARG_CL_TYPE_LONG = 6
enumerator QNN_GPU_KERNEL_ARG_CL_TYPE_ULONG = 7
enumerator QNN_GPU_KERNEL_ARG_CL_TYPE_FLOAT = 8
enumerator QNN_GPU_KERNEL_ARG_CL_TYPE_DOUBLE = 9
enum QnnGpu_KernelSourceType_t

An enum to specify the kernel source type.

Values:

enumerator QNN_GPU_KERNEL_SOURCE_TYPE_TEXT = 0
enumerator QNN_GPU_KERNEL_SOURCE_TYPE_BINARY = 1
enum QnnGpu_KernelTuningOption_t

This enum defines QNN GPU kernel tuning options.

Values:

enumerator QNN_GPU_KERNEL_TUNING_LOCAL_WORK_SIZE = 0

local work size tuning

enumerator QNN_GPU_KERNEL_TUNING_UNDEFINED = 0x7FFFFFFF
struct QnnGpu_DeviceProperties_t
#include <QnnGpuOpPackage.h>

A struct which is used to communicate device constant properties.

Public Members

char deviceVersion[128]

GPU device version string.

uint32_t interfaceVersion[2]

GPU driver interface version {major, minor}.

char tierName[8]

GPU Adreno(TM) tier string.

uint32_t compilerVersion[4]

GPU driver version {product, major, minor, patch}.

size_t maxWorkGroupSize

GPU device max work group size.

size_t image2dMaxWidth

GPU device image 2D max width.

size_t image2dMaxHeight

GPU device image 2D max height.

size_t maxBufferAllocSize

GPU device max memory allocation size.

uint32_t baseAddrAlignment

GPU device addr alignment in bits.

size_t image2dArrayMaxWidth

GPU device image 2D Array max width.

size_t image2dArrayMaxHeight

GPU device image 2D Array max height.

size_t image2dArrayMaxDepth

GPU device image 2D Array max depth.

struct QnnGpuOpPackage_GlobalInfrastructure_t
#include <QnnGpuOpPackage.h>

A QNN GPU struct specializing QnnOpPackage_GlobalInfrastructure_t.

Public Members

const Qnn_ApiVersion_t *sdkApiVersion

GPU backend version (as returned by QnnBackend_getApiVersion())

const QnnGpu_DeviceProperties_t *deviceProperties

GPU device properties.

const char *driverPath

Null terminated path to the OpenCL driver used by the backend.

struct QnnGpuOpPackage_PackageInfo_t
#include <QnnGpuOpPackage.h>

A struct having op package specific information.

Public Members

const char *kernelRepoHash

Null terminated hash key string of all kernel sources.

struct QnnGpuOpPackage_SuperNodeConnectionConstraint_t
#include <QnnGpuOpPackage.h>

A struct representing a super node connection constraint.

Public Members

uint32_t producer

Producer node corresponding to QnnGpuOpPackage_SuperNodeOptimization_t::operations.

uint32_t producerOutputIndex

Output tensor index corresponding to the producer node.

uint32_t consumer

Consumer node corresponding to QnnGpuOpPackage_SuperNodeOptimization_t::operations.

uint32_t consumerInputIndex

Output tensor index corresponding to the consumer node.

struct QnnGpuOpPackage_TensorConstraint_t
#include <QnnGpuOpPackage.h>

A struct representing a tensor constraint.

Public Members

uint32_t operationIndex

Operation corresponding to QnnGpuOpPackage_SuperNodeOptimization_t::operations.

QnnGpuOpPackage_TensorConstraintSource_t source

Source of the tensor in the Qnn_OpConfig_t.

uint32_t index

Tensor index in the Qnn_OpConfig_t, used only for inputs and outputs.

Tensor dimension index for dimension constraints.

const char *name

Tensor parameter name in the Qnn_OpConfig_t, used only for parameters.

union QnnGpuOpPackage_TensorConstraint_t::[anonymous] [anonymous]
QnnGpuOpPackage_TensorConstraintType_t type

Type of tensor constraint.

Qnn_DataType_t dataType

Tensor data type for Qnn_DataType_t constraints.

Qnn_TensorType_t tensorType

Tensor type for Qnn_TensorType_t constraints.

uint32_t rank

Tensor rank for rank constraints.

uint32_t size

Tensor dimension size for dimension constraints.

struct QnnGpuOpPackage_TensorConstraint_t::[anonymous]::[anonymous] dimension
union QnnGpuOpPackage_TensorConstraint_t::[anonymous] [anonymous]
struct QnnGpuOpPackage_SuperNodeOptimization_t
#include <QnnGpuOpPackage.h>

Public Members

const char **operations

Null-terminated array of comma separated lists of operations used for matching super node ops. An asterisk (*) may be used to represent any operation type.

QnnGpuOpPackage_SuperNodeConnectionConstraint_t **connectionConstraints

Null-terminated array of pointers to super node connection constraints.

QnnGpuOpPackage_TensorConstraint_t **tensorConstraints

Null-terminated array of pointers to super node tensor constraints.

struct QnnGpuOpPackage_Optimization_t
#include <QnnGpuOpPackage.h>

A struct representing a QNN GPU optimization.

Public Members

QnnGpuOpPackage_OptimizationType_t type

Type of optimization.

const char *name

Op package assigned name of the optimization.

const QnnGpuOpPackage_SuperNodeOptimization_t *superNode

Super node optimization, used when type is QNN_GPU_OPTIMIZATION_TYPE_SUPER_NODE.

union QnnGpuOpPackage_Optimization_t::[anonymous] [anonymous]
struct QnnGpuOpPackage_GraphInfrastructure_t
#include <QnnGpuOpPackage.h>

A QNN GPU struct specializing QnnOpPackage_GraphInfrastructure_t.

Public Members

QnnGpu_Precision_t precisionMode

GPU precision mode, user-supplied hint used for optimal kernel selection.

struct QnnGpu_BlockEncodingInfo_t
#include <QnnGpuOpPackage.h>

A struct to specify blockSize for weight Tensor and tensorId for weight Param tensor.

Public Members

uint32_t *bqBlockSize
uint32_t bqEncodingTensorId

Tensor Id for Quantization encodings.

struct QnnGpu_MemoryObject_t
#include <QnnGpuOpPackage.h>

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.

struct QnnGpu_TensorStorageType_t
#include <QnnGpuOpPackage.h>

A QNN GPU struct specifying a storage tensor.

Public Members

uint32_t id

Tensor ID.

const QnnGpu_MemoryObject_t *memoryObject

Tensor’s associated memory object.

struct QnnGpuOpPackage_Node_t
#include <QnnGpuOpPackage.h>

A QNN GPU struct specializing QnnOpPackage_Node_t.

Public Members

uint32_t optimization

Optimization index, see QnnOpPackage_Info_t, ignore when only one op config provided.

const Qnn_OpConfig_t **configs

Null-terminated array of operation config pointers Only one pointer provided when no optimizations performed

const QnnGpu_TensorStorageType_t **storageTypes

Null-terminated array of tensor storage type pointers called out in the config.

int32_t kernelVariant

Kernel variant index, if set then used by OpPackage to determine kernel selection.

struct QnnGpu_OutputClaim_t
#include <QnnGpuOpPackage.h>

A QNN GPU struct specifying an output tensor claim. Using the principle of least work, operations must output a memory object type that is most convenient for itself. Only QNN_TENSOR_TYPE_NATIVE tensor types may be claimed.

Public Members

uint32_t opConfigIndex

Index into the Qnn_OpConfig_t provided in QnnGpuOpPackage_Node_t.

uint32_t outputIndex

Index into the operation outputs to identify the tensor.

const QnnGpu_MemoryObject_t *memoryObject

Specification of the claimed memory object.

struct QnnGpu_TensorKernelArg_t
#include <QnnGpuOpPackage.h>

A QNN GPU struct specifying a kernel argument corresponding to a tensor. 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

uint32_t opConfigIndex

Index into the Qnn_OpConfig_t provided in QnnGpuOpPackage_Node_t, ignored for INTERNAL types.

uint32_t tensorIndex

Index into the operation input ot output list or the internal tensor list.

uint32_t element

Batch element index for aggregated tensor types.

struct QnnGpu_DataKernelArg_t
#include <QnnGpuOpPackage.h>

A QNN GPU struct specifying a kernel argument corresponding to a plain old data. This struct is used only with the QNN_GPU_KERNEL_ARG_TYPE_DATA arg type.

Public Members

QnnGpu_DataKernelArgType_t type

Data type of the data.

int8_t qnnChar

Used with QNN_GPU_KERNEL_ARG_CL_TYPE_CHAR.

uint8_t qnnUChar

Used with QNN_GPU_KERNEL_ARG_CL_TYPE_UCHAR.

int16_t qnnShort

Used with QNN_GPU_KERNEL_ARG_CL_TYPE_SHORT.

uint16_t qnnUShort

Used with QNN_GPU_KERNEL_ARG_CL_TYPE_USHORT.

int32_t qnnInt

Used with QNN_GPU_KERNEL_ARG_CL_TYPE_INT.

uint32_t qnnUInt

Used with QNN_GPU_KERNEL_ARG_CL_TYPE_UINT.

int64_t qnnLong

Used with QNN_GPU_KERNEL_ARG_CL_TYPE_LONG.

uint64_t qnnULong

Used with QNN_GPU_KERNEL_ARG_CL_TYPE_ULONG.

float qnnFloat

Used with QNN_GPU_KERNEL_ARG_CL_TYPE_FLOAT.

double qnnDouble

Used with QNN_GPU_KERNEL_ARG_CL_TYPE_DOUBLE.

union QnnGpu_DataKernelArg_t::[anonymous] [anonymous]
struct QnnGpu_LocalKernelArg_t
#include <QnnGpuOpPackage.h>

A QNN GPU struct specifying a kernel argument corresponding to a local memory type. This struct is used only with the QNN_GPU_KERNEL_ARG_TYPE_LOCAL arg type.

Public Members

uint32_t size

Size of the memory requested in bytes.

struct QnnGpu_KernelArg_t
#include <QnnGpuOpPackage.h>

A QNN GPU struct specifying a kernel argument. Note that the QNN_GPU_KERNEL_ARG_TYPE_NULL_PTR type does not have an entry in the union.

Public Members

QnnGpu_KernelArgType_t type

Type of kernel argument.

QnnGpu_TensorKernelArg_t tensor

Tensor type argument.

QnnGpu_DataKernelArg_t data

Plain old data argument.

QnnGpu_LocalKernelArg_t local

Local memory argument.

union QnnGpu_KernelArg_t::[anonymous] [anonymous]
struct QnnGpu_KernelLocalWorkSizeTuning_t
#include <QnnGpuOpPackage.h>

This struct provides local-work-size tuning configuration.

Public Members

uint32_t minValue[3]
uint32_t maxValue[3]
uint32_t stepSize[3]
struct QnnGpu_KernelTuningConfig_t
#include <QnnGpuOpPackage.h>

This struct provides QNN GPU kernel tuning configuration.

Public Members

QnnGpu_KernelTuningOption_t option
union unnamed
#include <QnnGpuOpPackage.h>
struct QnnGpu_Kernel_t
#include <QnnGpuOpPackage.h>

A QNN GPU struct specifying a kernel.

Public Members

const void *kernelSource

Kernel source code or binary.

size_t sourceLength

Length of kernel source/binary in bytes.

QnnGpu_KernelSourceType_t sourceType

Type of kernel source.

const char *buildOptions

Null terminated build options string used for kernel compilation.

size_t globalWorkDim

Rank of the globalWorkSizes.

size_t globalWorkSizes[3]

Global work sizes used by enqueuing the kernel.

size_t localWorkDim

Rank of the localWorkSizes.

size_t localWorkSizes[3]

Local work sizes used by enqueuing the kernel.

QnnGpu_KernelArg_t **args

Null-terminated array of kernel arguments in the order they appear in the kernel function.

const char *name

Null terminated name of the kernel.

uint32_t isDynamic

If non-zero, kernel will be enqueued during execute even if it is static.

QnnGpu_KernelTuningConfig_t **tuningConfigs

Null-terminated array to provide kernel tuning configurations.

void *reserved

Reserved field, must be null.

struct QnnGpu_Operation_t
#include <QnnGpuOpPackage.h>

A QNN GPU struct specifying an operation.

Public Members

QnnGpu_OutputClaim_t **outputClaims

Null-terminated array of output claims.

QnnGpu_MemoryObject_t **memoryObjects

Null-terminated array of tensor requests.

QnnGpu_Kernel_t **kernels

Null-terminated array of kernels.