OH_NNCompilation * OH_NNCompilation_Construct (const OH_NNModel *model) |
创建OH_NNCompilation类型的编译实例。 |
OH_NNCompilation * OH_NNCompilation_ConstructWithOfflineModelFile (const char *modelPath) |
基于离线模型文件创建编译实例。 |
OH_NNCompilation * OH_NNCompilation_ConstructWithOfflineModelBuffer (const void *modelBuffer, size_t modelSize) |
基于离线模型文件内存创建编译实例。 |
OH_NNCompilation * OH_NNCompilation_ConstructForCache () |
创建一个空的编译实例,以便稍后从模型缓存中恢复。 |
OH_NN_ReturnCode OH_NNCompilation_ExportCacheToBuffer (OH_NNCompilation *compilation, const void *buffer, size_t length, size_t *modelSize) |
将模型缓存写入到指定内存区域。 |
OH_NN_ReturnCode OH_NNCompilation_ImportCacheFromBuffer (OH_NNCompilation *compilation, const void *buffer, size_t modelSize) |
从指定内存区域读取模型缓存。 |
OH_NN_ReturnCode OH_NNCompilation_AddExtensionConfig (OH_NNCompilation *compilation, const char *configName, const void *configValue, const size_t configValueSize) |
为自定义硬件属性添加扩展配置。 |
OH_NN_ReturnCode OH_NNCompilation_SetDevice (OH_NNCompilation *compilation, size_t deviceID) |
指定模型编译和计算的硬件。 |
OH_NN_ReturnCode OH_NNCompilation_SetCache (OH_NNCompilation *compilation, const char *cachePath, uint32_t version) |
设置编译模型的缓存目录和版本。 |
OH_NN_ReturnCode OH_NNCompilation_SetPerformanceMode (OH_NNCompilation *compilation, OH_NN_PerformanceMode performanceMode) |
设置模型计算的性能模式。 |
OH_NN_ReturnCode OH_NNCompilation_SetPriority (OH_NNCompilation *compilation, OH_NN_Priority priority) |
设置模型计算的优先级。 |
OH_NN_ReturnCode OH_NNCompilation_EnableFloat16 (OH_NNCompilation *compilation, bool enableFloat16) |
是否以float16的浮点数精度计算。 |
OH_NN_ReturnCode OH_NNCompilation_Build (OH_NNCompilation *compilation) |
执行模型编译。 |
void OH_NNCompilation_Destroy (OH_NNCompilation **compilation) |
销毁Compilation实例。 |
NN_TensorDesc * OH_NNTensorDesc_Create () |
创建一个NN_TensorDesc实例。 |
OH_NN_ReturnCode OH_NNTensorDesc_Destroy (NN_TensorDesc **tensorDesc) |
释放一个NN_TensorDesc实例。 |
OH_NN_ReturnCode OH_NNTensorDesc_SetName (NN_TensorDesc *tensorDesc, const char *name) |
设置NN_TensorDesc的名称。 |
OH_NN_ReturnCode OH_NNTensorDesc_GetName (const NN_TensorDesc *tensorDesc, const char **name) |
获取NN_TensorDesc的名称。 |
OH_NN_ReturnCode OH_NNTensorDesc_SetDataType (NN_TensorDesc *tensorDesc, OH_NN_DataType dataType) |
设置NN_TensorDesc的数据类型。 |
OH_NN_ReturnCode OH_NNTensorDesc_GetDataType (const NN_TensorDesc *tensorDesc, OH_NN_DataType *dataType) |
获取NN_TensorDesc的数据类型。 |
OH_NN_ReturnCode OH_NNTensorDesc_SetShape (NN_TensorDesc *tensorDesc, const int32_t *shape, size_t shapeLength) |
设置NN_TensorDesc的数据形状。 |
OH_NN_ReturnCode OH_NNTensorDesc_GetShape (const NN_TensorDesc *tensorDesc, int32_t **shape, size_t *shapeLength) |
获取NN_TensorDesc的形状。 |
OH_NN_ReturnCode OH_NNTensorDesc_SetFormat (NN_TensorDesc *tensorDesc, OH_NN_Format format) |
设置NN_TensorDesc的数据布局。 |
OH_NN_ReturnCode OH_NNTensorDesc_GetFormat (const NN_TensorDesc *tensorDesc, OH_NN_Format *format) |
获取NN_TensorDesc的数据布局。 |
OH_NN_ReturnCode OH_NNTensorDesc_GetElementCount (const NN_TensorDesc *tensorDesc, size_t *elementCount) |
获取NN_TensorDesc的元素个数。 |
OH_NN_ReturnCode OH_NNTensorDesc_GetByteSize (const NN_TensorDesc *tensorDesc, size_t *byteSize) |
获取基于NN_TensorDesc的形状和数据类型计算的数据占用字节数。 |
NN_Tensor * OH_NNTensor_Create (size_t deviceID, NN_TensorDesc *tensorDesc) |
从NN_TensorDesc创建一个NN_Tensor实例。 |
NN_Tensor * OH_NNTensor_CreateWithSize (size_t deviceID, NN_TensorDesc *tensorDesc, size_t size) |
按照指定内存大小和NN_TensorDesc创建NN_Tensor实例。 |
NN_Tensor * OH_NNTensor_CreateWithFd (size_t deviceID, NN_TensorDesc *tensorDesc, int fd, size_t size, size_t offset) |
按照指定共享内存的文件描述符和NN_TensorDesc创建{\@Link NN_Tensor}实例。 |
OH_NN_ReturnCode OH_NNTensor_Destroy (NN_Tensor **tensor) |
销毁一个NN_Tensor实例。 |
NN_TensorDesc * OH_NNTensor_GetTensorDesc (const NN_Tensor *tensor) |
获取NN_Tensor的NN_TensorDesc实例。 |
void * OH_NNTensor_GetDataBuffer (const NN_Tensor *tensor) |
获取NN_Tensor数据的内存地址。 |
OH_NN_ReturnCode OH_NNTensor_GetFd (const NN_Tensor *tensor, int *fd) |
获取NN_Tensor数据所在共享内存的文件描述符。 |
OH_NN_ReturnCode OH_NNTensor_GetSize (const NN_Tensor *tensor, size_t *size) |
获取NN_Tensor数据所在共享内存的大小。 |
OH_NN_ReturnCode OH_NNTensor_GetOffset (const NN_Tensor *tensor, size_t *offset) |
获取NN_Tensor数据所在共享内存上的偏移量。 |
OH_NNExecutor * OH_NNExecutor_Construct (OH_NNCompilation *compilation) |
创建OH_NNExecutor执行器实例。 |
OH_NN_ReturnCode OH_NNExecutor_GetOutputShape (OH_NNExecutor *executor, uint32_t outputIndex, int32_t **shape, uint32_t *shapeLength) |
获取输出张量的维度信息。 |
void OH_NNExecutor_Destroy (OH_NNExecutor **executor) |
销毁执行器实例,释放执行器占用的内存。 |
OH_NN_ReturnCode OH_NNExecutor_GetInputCount (const OH_NNExecutor *executor, size_t *inputCount) |
获取输入张量的数量。 |
OH_NN_ReturnCode OH_NNExecutor_GetOutputCount (const OH_NNExecutor *executor, size_t *outputCount) |
获取输出张量的数量。 |
NN_TensorDesc * OH_NNExecutor_CreateInputTensorDesc (const OH_NNExecutor *executor, size_t index) |
由指定索引值创建一个输入张量的描述。 |
NN_TensorDesc * OH_NNExecutor_CreateOutputTensorDesc (const OH_NNExecutor *executor, size_t index) |
由指定索引值创建一个输出张量的描述。 |
OH_NN_ReturnCode OH_NNExecutor_GetInputDimRange (const OH_NNExecutor *executor, size_t index, size_t **minInputDims, size_t **maxInputDims, size_t *shapeLength) |
获取所有输入张量的维度范围。 |
OH_NN_ReturnCode OH_NNExecutor_SetOnRunDone (OH_NNExecutor *executor, NN_OnRunDone onRunDone) |
设置异步推理结束后的回调处理函数。 |
OH_NN_ReturnCode OH_NNExecutor_SetOnServiceDied (OH_NNExecutor *executor, NN_OnServiceDied onServiceDied) |
设置异步推理执行期间设备驱动服务突然死亡时的回调处理函数。 |
OH_NN_ReturnCode OH_NNExecutor_RunSync (OH_NNExecutor *executor, NN_Tensor *inputTensor[], size_t inputCount, NN_Tensor *outputTensor[], size_t outputCount) |
执行同步推理。 |
OH_NN_ReturnCode OH_NNExecutor_RunAsync (OH_NNExecutor *executor, NN_Tensor *inputTensor[], size_t inputCount, NN_Tensor *outputTensor[], size_t outputCount, int32_t timeout, void *userData) |
执行异步推理。 |
OH_NN_ReturnCode OH_NNDevice_GetAllDevicesID (const size_t **allDevicesID, uint32_t *deviceCount) |
获取对接到 Neural Network Runtime 的硬件ID。 |
OH_NN_ReturnCode OH_NNDevice_GetName (size_t deviceID, const char **name) |
获取指定硬件的名称。 |
OH_NN_ReturnCode OH_NNDevice_GetType (size_t deviceID, OH_NN_DeviceType *deviceType) |
获取指定硬件的类别信息。 |