op_common接口列表
针对CANN算子开发或调用场景(无论内置或自定义算子),其开发和调用过程会依赖opbase库(cann/opbase仓)提供的公共能力,包括日志获取、算子Tiling/InferShape开发依赖的接口等。
- 关键接口分类如下:
- log:算子日志相关接口
- math:数学计算相关接口
- platform:平台相关接口
- infershape:shape相关接口
- 接口说明:
- 接口定位:提供详细参数说明的接口属于正式接口,支持版本向后兼容;预留接口仅提供原型定义,不提供详细参数介绍,您可以暂不关注。
- 头文件路径:使用本章接口时请按实际情况include依赖的头文件,头文件路径为${INSTALL_DIR}/include目录,其中${INSTALL_DIR}请替换为CANN软件安装后文件存储路径。以root用户安装为例,安装后文件默认存储路径为:/usr/local/Ascend/cann。
分类 |
接口 |
说明 |
所属头文件 |
|---|---|---|---|
OP_LOGE |
打印算子ERROR级别日志。 |
op_common/log/log.h |
|
OP_LOGD |
打印算子DEBUG级别日志。 |
||
OP_LOGI |
打印算子INFO级别日志。 |
||
OP_LOGW |
打印算子WARNING级别日志。 |
||
OP_CHECK_IF |
当condition条件成立时,输出日志,并执行return表达式。 |
||
OP_CHECK_NULL_WITH_CONTEXT |
根据传入的context上下文,校验传入的指针是否为nullptr |
||
OP_LOGE_WITH_INVALID_INPUT_SHAPE |
记录并上报算子输入形状校验错误,上报EZ0001错误码。 |
||
OP_LOGE_WITH_INVALID_ATTR |
记录并上报算子属性值校验错误,上报EZ0002错误码。 |
||
OP_LOGE_WITH_INVALID_ATTR_SIZE |
记录并上报算子属性大小校验错误,上报EZ0003错误码。 |
||
OP_LOGE_WITH_INVALID_INPUT |
记录并上报算子输入参数为空校验错误,上报EZ0004错误码。 |
||
OP_LOGE_WITH_INVALID_INPUT_SHAPESIZE |
记录并上报算子输入形状大小校验错误,上报EZ0005错误码。 |
||
OP_LOGE_WITH_INVALID_INPUT_FORMAT |
记录并上报算子输入格式校验错误,上报EZ0006错误码。 |
||
OP_LOGE_WITH_INVALID_INPUT_DTYPE |
记录并上报算子输入数据类型校验错误,上报EZ0007错误码。 |
||
OP_LOGE_FOR_INVALID_SHAPE |
记录并上报参数形状校验错误,上报EZ0008错误码。 |
||
OP_LOGE_FOR_INVALID_SHAPE_WITH_REASON |
记录并上报参数形状校验错误(带原因),上报EZ0009错误码。 |
||
OP_LOGE_FOR_INVALID_SHAPES_WITH_REASON |
记录并上报多参数形状校验错误(带原因),上报EZ0010错误码。 |
||
OP_LOGE_FOR_INVALID_SHAPEDIM |
记录并上报参数形状维度校验错误,上报EZ0011错误码。 |
||
OP_LOGE_FOR_INVALID_SHAPEDIM_WITH_REASON |
记录并上报参数形状维度校验错误(带原因),上报EZ0012错误码。 |
||
OP_LOGE_FOR_INVALID_SHAPEDIMS_WITH_REASON |
记录并上报多参数形状维度校验错误(带原因),上报EZ0013错误码。 |
||
OP_LOGE_FOR_INVALID_SHAPESIZE |
记录并上报参数形状大小校验错误,上报EZ0014错误码。 |
||
OP_LOGE_FOR_INVALID_SHAPESIZE_WITH_REASON |
记录并上报参数形状大小校验错误(带原因),上报EZ0015错误码。 |
||
OP_LOGE_FOR_INVALID_SHAPESIZES_WITH_REASON |
记录并上报多参数形状大小校验错误(带原因),上报EZ0016错误码。 |
||
OP_LOGE_FOR_INVALID_FORMAT |
记录并上报参数格式校验错误,上报EZ0017错误码。 |
||
OP_LOGE_FOR_INVALID_FORMATS_WITH_REASON |
记录并上报多参数格式校验错误(带原因),上报EZ0018错误码。 |
||
OP_LOGE_FOR_INVALID_DTYPE |
记录并上报参数数据类型校验错误,上报EZ0019错误码。 |
||
OP_LOGE_FOR_INVALID_DTYPE_WITH_REASON |
记录并上报参数数据类型校验错误(带原因),上报EZ0020错误码。 |
||
OP_LOGE_FOR_INVALID_DTYPES_WITH_REASON |
记录并上报多参数数据类型校验错误(带原因),上报EZ0021错误码。 |
||
OP_LOGE_FOR_INVALID_TENSORNUM |
记录并上报参数张量数量校验错误,上报EZ0022错误码。 |
||
OP_LOGE_FOR_INVALID_TENSORNUMS_WITH_REASON |
记录并上报多参数张量数量校验错误(带原因),上报EZ0023错误码。 |
||
OP_LOGE_FOR_INVALID_VALUE |
记录并上报参数值校验错误,上报EZ0024错误码。 |
||
OP_LOGE_FOR_INVALID_LISTSIZE |
记录并上报参数列表大小校验错误,上报EZ0025错误码。 |
||
OP_LOGE_FOR_INVALID_VALUE_WITH_REASON |
记录并上报参数值校验错误(带原因),上报EZ0026错误码。 |
||
OP_LOGE_FOR_INVALID_VALUES_WITH_REASON |
记录并上报多参数值校验错误(带原因),上报EZ0027错误码。 |
||
OP_LOGE_FOR_INVALID_STRIDE |
记录并上报参数stride校验错误,上报EZ0028错误码。 |
||
OP_LOGE_FOR_FILE_PATH |
记录并上报文件路径无效错误,上报EZ0029错误码。 |
||
OP_LOGE_FOR_FILE_OPEN |
记录并上报文件打开失败错误,上报EZ0030错误码。 |
||
OP_LOGE_FOR_FILE_PARSE |
记录并上报文件解析失败错误,上报EZ0031错误码。 |
||
OP_LOGE_FOR_INVALID_CONFIG |
记录并上报配置项值无效错误,上报EZ0032错误码。 |
||
OP_LOGE_FOR_INVALID_CONFIG_WITH_REASON |
记录并上报配置项值无效错误(带原因),上报EZ0033错误码。 |
||
OP_LOGE_FOR_INVALID_CONFIGS_WITH_REASON |
记录并上报多配置项值无效错误(带原因),上报EZ0034错误码。 |
||
OP_LOGE_FOR_INVALID_FORMAT_WITH_REASON |
记录并上报参数格式校验错误(带原因),上报EZ0035错误码。 |
||
OP_LOGE_FOR_INVALID_GRAPH_NODE |
记录并上报图节点无效错误,上报EZ0036错误码。 |
||
OP_LOGE_FOR_INVALID_ARGUMENT_WITH_REASON |
记录并上报参数无效错误(带原因),上报EZ0037错误码。 |
||
OP_LOGE_FOR_INVALID_LISTSIZE_WITH_REASON |
记录并上报参数列表大小校验错误(带原因),上报EZ0038错误码。 |
||
FloorDiv |
向下取整的除法 |
op_common/op_host/util/math_util.h |
|
FloorAlign |
以align为单元,向下对齐 |
||
CeilDiv |
向上取整的除法 |
||
CeilAlign |
以align为单元,向上对齐 |
||
IsFloatEqual |
判定两个float/double是否相等 |
||
GetAivCoreNum |
获取平台AI vector的核数 |
op_common/op_host/util/platform_util.h |
|
GetAicCoreNum |
获取平台AI cube的核数 |
||
GetUbSize |
获取平台UB(Unified Buffer)空间大小,单位bytes |
||
GetUbBlockSize |
获取平台UB(Unified Buffer)的block单元大小,单位bytes |
||
GetVRegSize |
获取平台向量寄存器(Vector Register)的大小,单位bytes。 |
||
GetSimtMaxThreadNum |
获取平台SIMT最大线程数。 |
||
GetSimtMaxDCacheSize |
获取平台SIMT最大DCache大小,单位bytes。 |
||
GetCacheLineSize |
获取平台Cache Line的大小,单位bytes。 |
||
GetSectorCacheLineSize |
获取平台Sector Cache Line的大小,单位bytes。 |
||
GetNddmaDcacheSize |
获取平台NDDMA DCache的大小,单位bytes。 |
||
GetWorkspaceSize |
获取平台LibApi Workspace的大小,单位bytes。 |
||
SetUnknownRank |
设置输入shape为维度不确定的动态shape。 |
op_common/op_host/util/shape_util.h |
|
IsUnknownRank |
检查输入shape是否为维度不确定的shape。 |
||
SetUnknownShape |
设置输入shape的维度为rank,且每根轴长度都为不确定值。 |
||
IsUnknownShape |
检查输入shape的每一根轴长度是否都为不确定值。 |
||
InferShape4Broadcast |
broadcast类算子的infershape方法。 |
op_common/op_host/infershape_broadcast_util.h |
|
BroadcastShape |
根据输入张量的shape推导broadcast后的输出shape。 |
||
InferShape4Elewise |
elewise类算子的infershape方法。 |
op_common/op_host/infershape_elewise_util.h |
|
InferShape4Reduce |
reduce类算子的infershape方法。 |
op_common/op_host/infershape_reduce_util.h |
|
- |
预留接口,暂无需关注。 |
|