context.h

概述

提供了Context相关的接口,可以配置运行时信息。

起始版本:

9

相关模块:

MindSpore

汇总

类型定义

名称 描述
OH_AI_ContextHandle Mindspore的上下文信息的指针,该指针会指向Context。
OH_AI_DeviceInfoHandle Mindspore的运行设备信息的指针。

函数

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