目录

context.h

概述

提供了Context相关的接口,可以配置运行时信息,该接口是非线程安全的。

引用文件: <mindspore/context.h>

库: libmindspore_lite_ndk.so

系统能力: SystemCapability.Ai.MindSpore

起始版本: 9

相关模块: MindSpore

汇总

[h2]结构体

名称 typedef关键字 描述
OH_AI_ContextHandle void* MindSpore Lite上下文信息的指针,该指针会指向Context。
OH_AI_DeviceInfoHandle void* MindSpore Lite运行设备信息的指针。

[h2]函数

名称 描述
OH_AI_API OH_AI_ContextHandle OH_AI_ContextCreate() 创建一个上下文的对象。注意:此接口需跟OH_AI_ContextDestroy配套使用。
OH_AI_API void OH_AI_ContextDestroy(OH_AI_ContextHandle *context) 释放上下文对象。
OH_AI_API void OH_AI_ContextSetThreadNum(OH_AI_ContextHandle context, int32_t thread_num) 设置运行时的线程数量。
OH_AI_API int32_t OH_AI_ContextGetThreadNum(const OH_AI_ContextHandle context) 获取线程数量。
OH_AI_API void OH_AI_ContextSetThreadAffinityMode(OH_AI_ContextHandle context, int mode) 设置运行时线程绑定CPU核心的策略,按照CPU物理核频率分为大、中、小三种类型的核心,并且仅需绑大核或者绑中核,不需要绑小核。
OH_AI_API int OH_AI_ContextGetThreadAffinityMode(const OH_AI_ContextHandle context) 获取运行时线程绑定CPU核心的策略。
OH_AI_API void OH_AI_ContextSetThreadAffinityCoreList(OH_AI_ContextHandle context, const int32_t *core_list,size_t core_num)

设置运行时线程绑定CPU核心的列表。

例如:当core_list=[2,6,8]时,则线程会在CPU的第2,6,8个核心上运行。

如果对于同一个上下文对象,调用了OH_AI_ContextSetThreadAffinityMode和OH_AI_ContextSetThreadAffinityCoreList。

这两个函数,则仅OH_AI_ContextSetThreadAffinityCoreList的core_list参数生效,而OH_AI_ContextSetThreadAffinityMode的mode参数不生效。

OH_AI_API const int32_t *OH_AI_ContextGetThreadAffinityCoreList(const OH_AI_ContextHandle context, size_t *core_num) 获取CPU绑核列表。
OH_AI_API void OH_AI_ContextSetEnableParallel(OH_AI_ContextHandle context, bool is_parallel) 设置运行时是否支持并行。此接口特性当前未开启,设置无效。
OH_AI_API bool OH_AI_ContextGetEnableParallel(const OH_AI_ContextHandle context) 获取是否支持算子间并行。
OH_AI_API void OH_AI_ContextAddDeviceInfo(OH_AI_ContextHandle context, OH_AI_DeviceInfoHandle device_info) 将一个用户定义的运行设备信息附加到推理上下文中。
OH_AI_API OH_AI_DeviceInfoHandle OH_AI_DeviceInfoCreate(OH_AI_DeviceType device_type) 创建一个设备信息对象。
OH_AI_API void OH_AI_DeviceInfoDestroy(OH_AI_DeviceInfoHandle *device_info) 释放设备信息实例。注意:设备信息实例被添加到context后,无须调用者手动释放。
OH_AI_API void OH_AI_DeviceInfoSetProvider(OH_AI_DeviceInfoHandle device_info, const char *provider) 设置生产商的名称。
OH_AI_API const char *OH_AI_DeviceInfoGetProvider(const OH_AI_DeviceInfoHandle device_info) 获取生产商的名称。
OH_AI_API void OH_AI_DeviceInfoSetProviderDevice(OH_AI_DeviceInfoHandle device_info, const char *device) 设置生产商设备的名称。
OH_AI_API const char *OH_AI_DeviceInfoGetProviderDevice(const OH_AI_DeviceInfoHandle device_info) 获取生产商设备的名称。
OH_AI_API OH_AI_DeviceType OH_AI_DeviceInfoGetDeviceType(const OH_AI_DeviceInfoHandle device_info) 获取设备的类型。
OH_AI_API void OH_AI_DeviceInfoSetEnableFP16(OH_AI_DeviceInfoHandle device_info, bool is_fp16) 设置是否开启float16推理模式,仅CPU/GPU设备可用。
OH_AI_API bool OH_AI_DeviceInfoGetEnableFP16(const OH_AI_DeviceInfoHandle device_info) 获取是否开启float16推理模式,仅CPU/GPU设备可用。
OH_AI_API void OH_AI_DeviceInfoSetFrequency(OH_AI_DeviceInfoHandle device_info, int frequency) 设置NPU的频率,仅NPU设备可用。
OH_AI_API int OH_AI_DeviceInfoGetFrequency(const OH_AI_DeviceInfoHandle device_info) 获取NPU的频率类型,仅NPU设备可用。
OH_AI_API NNRTDeviceDesc *OH_AI_GetAllNNRTDeviceDescs(size_t *num) 获取系统中所有NNRt硬件设备的描述信息。
OH_AI_API NNRTDeviceDesc *OH_AI_GetElementOfNNRTDeviceDescs(NNRTDeviceDesc *descs, size_t index) 获取NNRt设备描述信息数组中的元素指针。
OH_AI_API void OH_AI_DestroyAllNNRTDeviceDescs(NNRTDeviceDesc **desc) 销毁从OH_AI_GetAllNNRTDeviceDescs获取的NNRt描述信息实例数组。
OH_AI_API size_t OH_AI_GetDeviceIdFromNNRTDeviceDesc(const NNRTDeviceDesc *desc) 从特定的NNRt设备描述信息实例获取NNRt设备ID。注意,此ID只对NNRt有效。
OH_AI_API const char *OH_AI_GetNameFromNNRTDeviceDesc(const NNRTDeviceDesc *desc) 从特定的NNRt设备描述信息实例获取NNRt设备名称。
OH_AI_API OH_AI_NNRTDeviceType OH_AI_GetTypeFromNNRTDeviceDesc(const NNRTDeviceDesc *desc) 从特定的NNRt设备描述信息实例获取NNRt设备类型。
OH_AI_API OH_AI_DeviceInfoHandle OH_AI_CreateNNRTDeviceInfoByName(const char *name) 查找指定名称的NNRt设备,根据找到的第一个设备信息,创建NNRt设备信息。
OH_AI_API OH_AI_DeviceInfoHandle OH_AI_CreateNNRTDeviceInfoByType(OH_AI_NNRTDeviceType type) 查找指定类型的NNRt设备,根据找到的第一个设备信息,创建NNRt设备信息。
OH_AI_API void OH_AI_DeviceInfoSetDeviceId(OH_AI_DeviceInfoHandle device_info, size_t device_id) 设置NNRt设备ID,仅NNRt设备可用。
OH_AI_API size_t OH_AI_DeviceInfoGetDeviceId(const OH_AI_DeviceInfoHandle device_info) 获取NNRt设备ID,仅NNRt设备可用。
OH_AI_API void OH_AI_DeviceInfoSetPerformanceMode(OH_AI_DeviceInfoHandle device_info, OH_AI_PerformanceMode mode) 设置NNRt性能模式,仅NNRt设备可用。
OH_AI_API OH_AI_PerformanceMode OH_AI_DeviceInfoGetPerformanceMode(const OH_AI_DeviceInfoHandle device_info) 获取NNRt性能模式,仅NNRt设备可用。
OH_AI_API void OH_AI_DeviceInfoSetPriority(OH_AI_DeviceInfoHandle device_info, OH_AI_Priority priority) 设置NNRt任务优先级,仅NNRt设备可用。
OH_AI_API OH_AI_Priority OH_AI_DeviceInfoGetPriority(const OH_AI_DeviceInfoHandle device_info) 获取NNRt任务优先级,仅NNRt设备可用。
OH_AI_API OH_AI_Status OH_AI_DeviceInfoAddExtension(OH_AI_DeviceInfoHandle device_info, const char *name,const char *value, size_t value_size)

向设备信息中添加键/值对形式的扩展配置。只对NNRt设备信息有效。

当前仅支持配置以下11种键:{"CachePath": "YourCachePath"},{"CacheVersion": "YourCacheVersion"},

{"QuantBuffer": "YourQuantBuffer"},{"ModelName": "YourModelName"},

{"isProfiling": "YourProfilingSwitch"},{"opLayout": "YourOpLayout"},

{"InputDims": "YourInputDims"},{"DynamicDims": "YourDynamicDims"},

{"QuantConfigData": "YourQuantConfigData"},{"BandMode": "YourBandMode"},

{"NPU_FM_SHARED": "YourNPU_FM_SHARED"},用户可根据使用情况配置各个键对应的值。

函数说明

[h2]OH_AI_ContextCreate()

OH_AI_API OH_AI_ContextHandle OH_AI_ContextCreate()

描述

创建一个上下文的对象。注意:此接口需跟OH_AI_ContextDestroy配套使用。

起始版本: 9

返回:

类型 说明
OH_AI_API OH_AI_ContextHandle 指向上下文信息的OH_AI_ContextHandle。

[h2]OH_AI_ContextDestroy()

OH_AI_API void OH_AI_ContextDestroy(OH_AI_ContextHandle *context)

描述

释放上下文对象。

起始版本: 9

参数:

参数项 描述
OH_AI_ContextHandle *context 指向OH_AI_ContextHandle的二级指针,上下文销毁后会对context置为空指针。

[h2]OH_AI_ContextSetThreadNum()

OH_AI_API void OH_AI_ContextSetThreadNum(OH_AI_ContextHandle context, int32_t thread_num)

描述

设置运行时的线程数量。

起始版本: 9

参数:

参数项 描述
OH_AI_ContextHandle context 指向上下文信息实例的OH_AI_ContextHandle。
int32_t thread_num 运行时的线程数量。长度跟随系统限制。

[h2]OH_AI_ContextGetThreadNum()

OH_AI_API int32_t OH_AI_ContextGetThreadNum(const OH_AI_ContextHandle context)

描述

获取线程数量。

起始版本: 9

参数:

参数项 描述
const OH_AI_ContextHandle context 指向上下文信息实例的OH_AI_ContextHandle。

返回:

类型 说明
OH_AI_API int32_t 当前的线程数量。

[h2]OH_AI_ContextSetThreadAffinityMode()

OH_AI_API void OH_AI_ContextSetThreadAffinityMode(OH_AI_ContextHandle context, int mode)

描述

设置运行时线程绑定CPU核心的策略,按照CPU物理核频率分为大、中、小三种类型的核心,并且仅需绑大核或者绑中核,不需要绑小核。

起始版本: 9

参数:

参数项 描述
OH_AI_ContextHandle context 指向上下文信息实例的OH_AI_ContextHandle。
int mode 绑核策略。一共有三种策略,0为不绑核,1为大核优先,2为中核优先。

[h2]OH_AI_ContextGetThreadAffinityMode()

OH_AI_API int OH_AI_ContextGetThreadAffinityMode(const OH_AI_ContextHandle context)

描述

获取运行时线程绑定CPU核心的策略。

起始版本: 9

参数:

参数项 描述
const OH_AI_ContextHandle context 指向上下文信息实例的OH_AI_ContextHandle。

返回:

类型 说明
OH_AI_API int 绑核策略。一共有三种策略,0为不绑核,1为大核优先,2为中核优先。

[h2]OH_AI_ContextSetThreadAffinityCoreList()

OH_AI_API void OH_AI_ContextSetThreadAffinityCoreList(OH_AI_ContextHandle context, const int32_t *core_list,size_t core_num)

描述

设置运行时线程绑定CPU核心的列表。

例如:当core_list=[2,6,8]时,则线程会在CPU的第2,6,8个核心上运行。

如果对于同一个上下文对象,调用了OH_AI_ContextSetThreadAffinityMode和OH_AI_ContextSetThreadAffinityCoreList。

这两个函数,则仅OH_AI_ContextSetThreadAffinityCoreList的core_list参数生效,而OH_AI_ContextSetThreadAffinityMode的mode参数不生效。

起始版本: 9

参数:

参数项 描述
OH_AI_ContextHandle context 指向上下文信息实例的OH_AI_ContextHandle。
const int32_t *core_list CPU绑核的列表。
size_t core_num 核的数量,它就代表core_list的长度。

[h2]OH_AI_ContextGetThreadAffinityCoreList()

OH_AI_API const int32_t *OH_AI_ContextGetThreadAffinityCoreList(const OH_AI_ContextHandle context, size_t *core_num)

描述

获取CPU绑核列表。

起始版本: 9

参数:

参数项 描述
const OH_AI_ContextHandle context 指向上下文信息实例的OH_AI_ContextHandle。
size_t *core_num 该参数是输出参数,表示核的数量。

返回:

类型 说明
OH_AI_API const int32_t * CPU绑核列表。此列表对象由OH_AI_ContextHandle管理,调用者无须手动释放。

[h2]OH_AI_ContextSetEnableParallel()

OH_AI_API void OH_AI_ContextSetEnableParallel(OH_AI_ContextHandle context, bool is_parallel)

描述

设置运行时是否支持并行。此接口特性当前未开启,设置无效。

起始版本: 9

参数:

参数项 描述
OH_AI_ContextHandle context 指向上下文信息实例的OH_AI_ContextHandle。
bool is_parallel 是否支持并行。true为支持并行,false为不支持并行。

[h2]OH_AI_ContextGetEnableParallel()

OH_AI_API bool OH_AI_ContextGetEnableParallel(const OH_AI_ContextHandle context)

描述

获取是否支持算子间并行。

起始版本: 9

参数:

参数项 描述
const OH_AI_ContextHandle context 指向上下文信息实例的OH_AI_ContextHandle。

返回:

类型 说明
OH_AI_API bool 是否支持并行。true为支持并行,false为不支持并行。

[h2]OH_AI_ContextAddDeviceInfo()

OH_AI_API void OH_AI_ContextAddDeviceInfo(OH_AI_ContextHandle context, OH_AI_DeviceInfoHandle device_info)

描述

将一个用户定义的运行设备信息附加到推理上下文中。

起始版本: 9

参数:

参数项 描述
OH_AI_ContextHandle context 指向上下文信息实例的OH_AI_ContextHandle。
OH_AI_DeviceInfoHandle device_info 指向设备信息实例的OH_AI_DeviceInfoHandle。

[h2]OH_AI_DeviceInfoCreate()

OH_AI_API OH_AI_DeviceInfoHandle OH_AI_DeviceInfoCreate(OH_AI_DeviceType device_type)

描述

创建一个设备信息对象。

起始版本: 9

参数:

参数项 描述
OH_AI_DeviceType device_type 设备类型,具体见OH_AI_DeviceType。

返回:

类型 说明
OH_AI_API OH_AI_DeviceInfoHandle 指向设备信息实例的OH_AI_DeviceInfoHandle。

[h2]OH_AI_DeviceInfoDestroy()

OH_AI_API void OH_AI_DeviceInfoDestroy(OH_AI_DeviceInfoHandle *device_info)

描述

释放设备信息实例。注意:设备信息实例被添加到context后,无须调用者手动释放。

起始版本: 9

参数:

参数项 描述
OH_AI_DeviceInfoHandle *device_info 指向设备信息实例的OH_AI_DeviceInfoHandle。

[h2]OH_AI_DeviceInfoSetProvider()

OH_AI_API void OH_AI_DeviceInfoSetProvider(OH_AI_DeviceInfoHandle device_info, const char *provider)

描述

设置生产商的名称。

起始版本: 9

参数:

参数项 描述
OH_AI_DeviceInfoHandle device_info 指向设备信息实例的OH_AI_DeviceInfoHandle。
const char *provider 生产商的名称。字符串长度跟随系统限制。

[h2]OH_AI_DeviceInfoGetProvider()

OH_AI_API const char *OH_AI_DeviceInfoGetProvider(const OH_AI_DeviceInfoHandle device_info)

描述

获取生产商的名称。

起始版本: 9

参数:

参数项 描述
const OH_AI_DeviceInfoHandle device_info 指向设备信息实例的OH_AI_DeviceInfoHandle。

返回:

类型 说明
OH_AI_API const char * 生产商的名称。

[h2]OH_AI_DeviceInfoSetProviderDevice()

OH_AI_API void OH_AI_DeviceInfoSetProviderDevice(OH_AI_DeviceInfoHandle device_info, const char *device)

描述

设置生产商设备的名称。

起始版本: 9

参数:

参数项 描述
OH_AI_DeviceInfoHandle device_info 指向设备信息实例的OH_AI_DeviceInfoHandle。
const char *device 生产商设备名称。例如: CPU。字符串长度跟随系统限制。

[h2]OH_AI_DeviceInfoGetProviderDevice()

OH_AI_API const char *OH_AI_DeviceInfoGetProviderDevice(const OH_AI_DeviceInfoHandle device_info)

描述

获取生产商设备的名称。

起始版本: 9

参数:

参数项 描述
const OH_AI_DeviceInfoHandle device_info 指向设备信息实例的OH_AI_DeviceInfoHandle。

返回:

类型 说明
OH_AI_API const char * 生产商设备的名称。

[h2]OH_AI_DeviceInfoGetDeviceType()

OH_AI_API OH_AI_DeviceType OH_AI_DeviceInfoGetDeviceType(const OH_AI_DeviceInfoHandle device_info)

描述

获取设备的类型。

起始版本: 9

参数:

参数项 描述
const OH_AI_DeviceInfoHandle device_info 指向设备信息实例的OH_AI_DeviceInfoHandle。

返回:

类型 说明
OH_AI_API OH_AI_DeviceType 生产商设备类型。

[h2]OH_AI_DeviceInfoSetEnableFP16()

OH_AI_API void OH_AI_DeviceInfoSetEnableFP16(OH_AI_DeviceInfoHandle device_info, bool is_fp16)

描述

设置是否开启float16推理模式,仅CPU/GPU设备可用。

起始版本: 9

参数:

参数项 描述
OH_AI_DeviceInfoHandle device_info 指向设备信息实例的OH_AI_DeviceInfoHandle。
bool is_fp16 是否开启float16推理模式。true为开启float16推理模式,false为不开启float16推理模式。

[h2]OH_AI_DeviceInfoGetEnableFP16()

OH_AI_API bool OH_AI_DeviceInfoGetEnableFP16(const OH_AI_DeviceInfoHandle device_info)

描述

获取是否开启float16推理模式,仅CPU/GPU设备可用。

起始版本: 9

参数:

参数项 描述
const OH_AI_DeviceInfoHandle device_info 指向设备信息实例的OH_AI_DeviceInfoHandle。

返回:

类型 说明
OH_AI_API bool 是否开启float16推理模式。true为开启float16推理模式,false为不开启float16推理模式。

[h2]OH_AI_DeviceInfoSetFrequency()

OH_AI_API void OH_AI_DeviceInfoSetFrequency(OH_AI_DeviceInfoHandle device_info, int frequency)

描述

设置NPU的频率,仅NPU设备可用。

起始版本: 9

参数:

参数项 描述
OH_AI_DeviceInfoHandle device_info 指向设备信息实例的OH_AI_DeviceInfoHandle。
int frequency 频率类型,取值范围为0-4,默认是3。0表示不设置,由系统调节;1表示低功耗;2表示平衡;3表示高性能;4表示超高性能。

[h2]OH_AI_DeviceInfoGetFrequency()

OH_AI_API int OH_AI_DeviceInfoGetFrequency(const OH_AI_DeviceInfoHandle device_info)

描述

获取NPU的频率类型,仅NPU设备可用。

起始版本: 9

参数:

参数项 描述
const OH_AI_DeviceInfoHandle device_info 指向设备信息实例的OH_AI_DeviceInfoHandle。

返回:

类型 说明
OH_AI_API int NPU的频率类型。取值范围为0-4,0表示不设置,由系统调节;1表示低功耗;2表示平衡;3表示高性能;4表示超高性能。

[h2]OH_AI_GetAllNNRTDeviceDescs()

OH_AI_API NNRTDeviceDesc *OH_AI_GetAllNNRTDeviceDescs(size_t *num)

描述

获取系统中所有NNRt硬件设备的描述信息。

起始版本: 10

参数:

参数项 描述
size_t *num 输出参数,返回设备数量。

返回:

类型 说明
OH_AI_API NNRTDeviceDesc * 指向NNRt设备描述信息实例数组的指针。当获取失败时,返回NULL。

[h2]OH_AI_GetElementOfNNRTDeviceDescs()

OH_AI_API NNRTDeviceDesc *OH_AI_GetElementOfNNRTDeviceDescs(NNRTDeviceDesc *descs, size_t index)

描述

获取NNRt设备描述信息数组中的元素指针。

起始版本: 10

参数:

参数项 描述
NNRTDeviceDesc *descs NNRt设备描述信息数组。
size_t index 数组元素索引。

返回:

类型 说明
OH_AI_API NNRTDeviceDesc * NNRt设备描述信息类型指针。

[h2]OH_AI_DestroyAllNNRTDeviceDescs()

OH_AI_API void OH_AI_DestroyAllNNRTDeviceDescs(NNRTDeviceDesc **desc)

描述

销毁从OH_AI_GetAllNNRTDeviceDescs获取的NNRt描述信息实例数组。

起始版本: 10

参数:

参数项 描述
NNRTDeviceDesc **desc 指向NNRt设备描述信息实例数组的二重指针。销毁结束,desc指向内容会被置为NULL。

[h2]OH_AI_GetDeviceIdFromNNRTDeviceDesc()

OH_AI_API size_t OH_AI_GetDeviceIdFromNNRTDeviceDesc(const NNRTDeviceDesc *desc)

描述

从特定的NNRt设备描述信息实例获取NNRt设备ID。注意,此ID只对NNRt有效。

起始版本: 10

参数:

参数项 描述
const NNRTDeviceDesc *desc 指向NNRt设备描述信息实例的指针。

返回:

类型 说明
OH_AI_API size_t NNRt设备ID。

[h2]OH_AI_GetNameFromNNRTDeviceDesc()

OH_AI_API const char *OH_AI_GetNameFromNNRTDeviceDesc(const NNRTDeviceDesc *desc)

描述

从特定的NNRt设备描述信息实例获取NNRt设备名称。

起始版本: 10

参数:

参数项 描述
const NNRTDeviceDesc *desc 指向NNRt设备描述信息实例的指针。

返回:

类型 说明
OH_AI_API const char * NNRt设备名称,指向一个常量字符串的指针,该常量字符串由desc持有,调用者无需单独释放此指针。

[h2]OH_AI_GetTypeFromNNRTDeviceDesc()

OH_AI_API OH_AI_NNRTDeviceType OH_AI_GetTypeFromNNRTDeviceDesc(const NNRTDeviceDesc *desc)

描述

从特定的NNRt设备描述信息实例获取NNRt设备类型。

起始版本: 10

参数:

参数项 描述
const NNRTDeviceDesc *desc 指向NNRt设备描述信息实例的指针。

返回:

类型 说明
OH_AI_API OH_AI_NNRTDeviceType OH_AI_NNRTDeviceType NNRt设备类型。

[h2]OH_AI_CreateNNRTDeviceInfoByName()

OH_AI_API OH_AI_DeviceInfoHandle OH_AI_CreateNNRTDeviceInfoByName(const char *name)

描述

查找指定名称的NNRt设备,根据找到的第一个设备信息,创建NNRt设备信息。

起始版本: 10

参数:

参数项 描述
const char *name 目标NNRt设备名。字符串长度跟随系统限制。

返回:

类型 说明
OH_AI_API OH_AI_DeviceInfoHandle 指向设备信息实例的OH_AI_DeviceInfoHandle。

[h2]OH_AI_CreateNNRTDeviceInfoByType()

OH_AI_API OH_AI_DeviceInfoHandle OH_AI_CreateNNRTDeviceInfoByType(OH_AI_NNRTDeviceType type)

描述

查找指定类型的NNRt设备,根据找到的第一个设备信息,创建NNRt设备信息。

起始版本: 10

参数:

参数项 描述
OH_AI_NNRTDeviceType type OH_AI_NNRTDeviceType 目标NNRt设备类型。

返回:

类型 说明
OH_AI_API OH_AI_DeviceInfoHandle 指向设备信息实例的OH_AI_DeviceInfoHandle。

[h2]OH_AI_DeviceInfoSetDeviceId()

OH_AI_API void OH_AI_DeviceInfoSetDeviceId(OH_AI_DeviceInfoHandle device_info, size_t device_id)

描述

设置NNRt设备ID,仅NNRt设备可用。

起始版本: 10

参数:

参数项 描述
OH_AI_DeviceInfoHandle device_info 指向设备信息实例的OH_AI_DeviceInfoHandle。
size_t device_id NNRt设备ID。

[h2]OH_AI_DeviceInfoGetDeviceId()

OH_AI_API size_t OH_AI_DeviceInfoGetDeviceId(const OH_AI_DeviceInfoHandle device_info)

描述

获取NNRt设备ID,仅NNRt设备可用。

起始版本: 10

参数:

参数项 描述
const OH_AI_DeviceInfoHandle device_info 指向设备信息实例的OH_AI_DeviceInfoHandle。

返回:

类型 说明
OH_AI_API size_t NNRt设备ID。

[h2]OH_AI_DeviceInfoSetPerformanceMode()

OH_AI_API void OH_AI_DeviceInfoSetPerformanceMode(OH_AI_DeviceInfoHandle device_info, OH_AI_PerformanceMode mode)

描述

设置NNRt性能模式,仅NNRt设备可用。

起始版本: 10

参数:

参数项 描述
OH_AI_DeviceInfoHandle device_info 指向设备信息实例的OH_AI_DeviceInfoHandle。
OH_AI_PerformanceMode mode OH_AI_PerformanceMode NNRt性能模式。

[h2]OH_AI_DeviceInfoGetPerformanceMode()

OH_AI_API OH_AI_PerformanceMode OH_AI_DeviceInfoGetPerformanceMode(const OH_AI_DeviceInfoHandle device_info)

描述

获取NNRt性能模式,仅NNRt设备可用。

起始版本: 10

参数:

参数项 描述
const OH_AI_DeviceInfoHandle device_info 指向设备信息实例的OH_AI_DeviceInfoHandle。

返回:

类型 说明
OH_AI_API OH_AI_PerformanceMode OH_AI_PerformanceMode NNRt性能模式。

[h2]OH_AI_DeviceInfoSetPriority()

OH_AI_API void OH_AI_DeviceInfoSetPriority(OH_AI_DeviceInfoHandle device_info, OH_AI_Priority priority)

描述

设置NNRt任务优先级,仅NNRt设备可用。

起始版本: 10

参数:

参数项 描述
OH_AI_DeviceInfoHandle device_info 指向设备信息实例的OH_AI_DeviceInfoHandle。
OH_AI_Priority priority OH_AI_Priority NNRt任务优先级。

[h2]OH_AI_DeviceInfoGetPriority()

OH_AI_API OH_AI_Priority OH_AI_DeviceInfoGetPriority(const OH_AI_DeviceInfoHandle device_info)

描述

获取NNRt任务优先级,仅NNRt设备可用。

起始版本: 23

参数:

参数项 描述
const OH_AI_DeviceInfoHandle device_info 指向设备信息实例的OH_AI_DeviceInfoHandle。

返回:

类型 说明
OH_AI_API OH_AI_Priority OH_AI_Priority NNRt任务优先级。

[h2]OH_AI_DeviceInfoAddExtension()

OH_AI_API OH_AI_Status OH_AI_DeviceInfoAddExtension(OH_AI_DeviceInfoHandle device_info, const char *name,const char *value, size_t value_size)

描述

向设备信息中添加键/值对形式的扩展配置。只对NNRt设备信息有效。

当前仅支持配置以下11种键:{"CachePath": "YourCachePath"},{"CacheVersion": "YourCacheVersion"},

{"QuantBuffer": "YourQuantBuffer"},{"ModelName": "YourModelName"},

{"isProfiling": "YourProfilingSwitch"},{"opLayout": "YourOpLayout"},

{"InputDims": "YourInputDims"},{"DynamicDims": "YourDynamicDims"},

{"QuantConfigData": "YourQuantConfigData"},{"BandMode": "YourBandMode"},

{"NPU_FM_SHARED": "YourNPU_FM_SHARED"},用户可根据使用情况配置各个键对应的值。

起始版本: 10

参数:

参数项 描述
OH_AI_DeviceInfoHandle device_info 指向设备信息实例的OH_AI_DeviceInfoHandle。
const char *name 单个扩展项的键,格式为C字符串。字符串长度限制为128。
const char *value 单个扩展项的值内容首地址。字符串长度跟随系统限制。
size_t value_size 单个扩展项的值内容长度。

返回:

类型 说明
OH_AI_API OH_AI_Status OH_AI_Status 执行状态码,若成功返回OH_AI_STATUS_SUCCESS,失败则返回具体错误码。