数据结构
本章提供了调用CANN算子API依赖的基础数据结构,开发者无需关注其内部实现,直接使用即可。
注意,该基础数据结构可通过《算子加速库》中“公共接口”创建,如aclCreateTensor等。
-
aclTensor
框架定义的一种用来管理和存储张量数据的结构(如向量、矩阵等多维度数据),可通过aclCreateTensor接口创建该对象。
typedef struct aclTensor aclTensor -
aclScalar
框架定义的一种用来管理和存储标量数据的结构(即单一的数值),可通过aclCreateScalar接口创建该对象。
typedef struct aclScalar aclScalar -
aclIntArray
框架定义的一种用来管理和存储整型数据的数组结构,可通过aclCreateIntArray接口创建该对象。
typedef struct aclIntArray aclIntArray -
aclFloatArray
框架定义的一种用来管理和存储float32型数据的数组结构,可通过aclCreateFloatArray接口创建该对象。
typedef struct aclFloatArray aclFloatArray -
aclBoolArray
框架定义的一种用来管理和存储布尔型数据的数组结构,可通过aclCreateBoolArray接口创建该对象。
typedef struct aclBoolArray aclBoolArray -
aclTensorList
框架定义的一种用来管理和存储多个张量数据的数组结构,可通过aclCreateTensorList接口创建该对象。
typedef struct aclTensorList aclTensorList -
aclScalarList
框架定义的一种用来管理和存储标量数据的数组结构,可通过aclCreateScalarList接口创建该对象。
typedef struct aclScalarList aclScalarList -
aclOpExecutor
框架定义的一种执行器数据结构,用来执行算子计算的容器。
通常调用算子一阶段接口aclxxXxxGetWorkspaceSize时,框架会自动创建aclOpExecutor;调用二阶段接口aclxxXxx后会自动释放该对象。
typedef struct aclOpExecutor aclOpExecutor -
aclrtStream
框架定义的一种流处理数据结构,用来管理和维护一些异步操作的执行顺序。
typedef void *aclrtStream