跳到主要内容

aclrtUtilizationInfo

aclrtStreamConfigAttr

typedef enum {
ACL_RT_STREAM_WORK_ADDR_PTR = 0,
ACL_RT_STREAM_WORK_SIZE,
ACL_RT_STREAM_FLAG,
ACL_RT_STREAM_PRIORITY,
} aclrtStreamConfigAttr;

表1 枚举项说明

枚举项说明
ACL_RT_STREAM_WORK_ADDR_PTR某一个Stream上的模型所需工作内存(Device上存放模型执行过程中的临时数据)的指针,由用户管理工作内存。该配置主要用于多模型在同一个Stream上串行执行时想共享工作内存的场景,此时需按多个模型中最大的工作内存来申请内存,可提前使用aclmdlQuerySize查询各模型所需的工作内存大小。 如果同时配置ACL_RT_STREAM_WORK_ADDR_PTR以及aclmdlExecConfigAttr中的ACL_MDL_WORK_ADDR_PTR(表示某个模型的工作内存),则以aclmdlExecConfigAttr中的ACL_MDL_WORK_ADDR_PTR优先。
ACL_RT_STREAM_WORK_SIZE模型所需工作内存的大小,单位为Byte。
ACL_RT_STREAM_FLAG预留配置,默认值为0。
ACL_RT_STREAM_PRIORITYStream的优先级,数字越小优先级越高,取值[0,7]。默认值为0。

父主题: 数据类型及其操作接口

aclSysParamOpt

typedef enum {
ACL_OPT_DETERMINISTIC = 0,
} aclSysParamOpt;

表1 枚举项说明

枚举项说明
ACL_OPT_DETERMINISTIC是否开启确定性计算。
- 0:默认值,不开启确定性计算。
- 1:开启确定性计算。
当开启确定性计算功能时,算子在相同的硬件和输入下,多次执行将产生相同的输出。但启用确定性计算往往导致算子执行变慢。 默认情况下,不开启确定性计算,算子在相同的硬件和输入下,多次执行的结果可能不同。这个差异的来源,一般是因为在算子实现中,存在异步的多线程执行,会导致浮点数累加的顺序变化。 通常建议不开启确定性计算,因为确定性计算往往会导致算子执行变慢,进而影响性能。当发现模型多次执行结果不同,或者是进行精度调优时,可开启确定性计算,辅助模型调试、调优。

父主题: 数据类型及其操作接口

aclrtUtilizationInfo

typedef struct aclrtUtilizationInfo {
int32_t cubeUtilization; // Cube利用率
int32_t vectorUtilization; // Vector利用率
int32_t aicpuUtilization; // AI CPU利用率
int32_t memoryUtilization; // Device内存利用率
aclrtUtilizationExtendInfo *utilizationExtend; // 预留参数,当前设置为null
} aclrtUtilizationInfo;

父主题: 数据类型及其操作接口

aclrtStreamStatus

typedef enum aclrtStreamStatus {
ACL_STREAM_STATUS_COMPLETE = 0, // Stream上的所有任务已完成
ACL_STREAM_STATUS_NOT_READY = 1, // Stream上至少有一个任务未完成
ACL_STREAM_STATUS_RESERVED = 0xFFFF, // 预留
} aclrtStreamStatus;

父主题: 数据类型及其操作接口

aclrtMemHandleType

typedef enum aclrtMemHandleType {
ACL_MEM_HANDLE_TYPE_NONE = 0,
} aclrtMemHandleType;

父主题: 数据类型及其操作接口

在线提单