File QnnGpuOpPackage.h¶
↰ Parent directory (include/QNN/GPU)
A header which defines the QNN GPU specialization of the File QnnOpPackage.h interface.
Contents
Definition (include/QNN/GPU/QnnGpuOpPackage.h)¶
Includes¶
GPU/QnnGpuCommon.h(File QnnGpuCommon.h)GPU/QnnGpuGraph.h(File QnnGpuGraph.h)QnnOpPackage.h(File QnnOpPackage.h)QnnTypes.h(File QnnTypes.h)stdint.h
Classes¶
Enums¶
Defines¶
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*/ \
NULL /*name*/ \
}
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.
-
enumerator QNN_GPU_OPTIMIZATION_TYPE_UNDEFINED = 0¶
-
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¶
-
enumerator QNN_GPU_OPTIMIZATION_SUPER_NODE_TENSOR_SOURCE_OUTPUT = 1¶
-
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.
-
enumerator QNN_GPU_OPTIMIZATION_SUPER_NODE_TENSOR_CONSTRAINT_DATA_TYPE = 1¶
-
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
-
enumerator QNN_GPU_MEM_OBJ_TYPE_HOST = 0¶
-
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_C_HWC4 = 3¶
C_HWC4 layout.
-
enumerator QNN_GPU_MEM_LAYOUT_DHWC = 4¶
DHWC layout.
-
enumerator QNN_GPU_MEM_LAYOUT_CDHW = 5¶
CDHW layout.
-
enumerator QNN_GPU_MEM_LAYOUT_UNDEFINED = 0x7FFFFFFF¶
Undefined.
-
enumerator QNN_GPU_MEM_LAYOUT_HWC = 0¶
-
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.
-
enumerator QNN_GPU_KERNEL_ARG_TYPE_OP_INPUT_READ = 0¶
-
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¶
-
enumerator QNN_GPU_KERNEL_ARG_CL_TYPE_CHAR = 0¶
-
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.
-
bool predicateClobberFullRegister¶
GPU compiler predicate clobber type.
-
bool isLocalMemorySupported¶
GPU local memory support type.
-
bool vector64Support¶
GPU compiler vector64 support.
-
char deviceVersion[128]¶
-
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.
-
const Qnn_ApiVersion_t *sdkApiVersion¶
-
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.
-
const char *kernelRepoHash¶
-
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.
-
uint32_t producer¶
-
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]¶
-
uint32_t operationIndex¶
-
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.
-
const char **operations¶
-
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]¶
-
QnnGpuOpPackage_OptimizationType_t type¶
-
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.
-
const QnnGpu_DeviceProperties_t *deviceProperties¶
GPU device properties.
-
QnnGpu_Precision_t precisionMode¶
-
struct QnnGpu_BlockEncodingInfo_t¶
- #include <QnnGpuOpPackage.h>
A struct to specify blockSize for weight Tensor and tensorId for weight Param tensor.
-
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.
-
const char *name¶
Memory object name used to propagate the tensor name to Backend.
-
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.
-
uint32_t id¶
-
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.
-
uint32_t optimization¶
-
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.
-
uint32_t opConfigIndex¶
-
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]¶
-
QnnGpu_DataKernelArgType_t type¶
-
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.
-
uint32_t size¶
-
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]¶
-
QnnGpu_KernelArgType_t type¶
-
struct QnnGpu_KernelLocalWorkSizeTuning_t¶
- #include <QnnGpuOpPackage.h>
This struct provides local-work-size tuning configuration.
-
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>
Public Members
-
QnnGpu_KernelTuningOption_t option¶
-
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.
-
const void *kernelSource¶
-
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.
-
QnnGpu_OutputClaim_t **outputClaims¶