单算子API执行

本章介绍了支持以单算子API执行方式调用算子的接口,如表1所示,提供了详细的接口介绍,包括接口原型、功能描述、参数说明、调用示例等,指导用户快速上手调用算子API,以支撑AI业务的高效应用开发。
安装固件、驱动及CANN软件包后,编译、运行应用程序时才能引用到本章节接口的头文件、库文件。头文件在“${INSTALL_DIR}/include/”目录下,库文件在“${INSTALL_DIR}/lib64/”目录下。${INSTALL_DIR}请替换为CANN软件安装后文件存储路径。若安装的Ascend-cann-toolkit软件包,以root安装举例,则安装后文件存储路径为:/usr/local/Ascend/ascend-toolkit/latest。
算子接口的调用流程请参见单算子API执行接口调用流程,其调用示例(以NN算子调用为例)请参见调用NN/融合算子接口示例代码。
接口分类 |
说明 |
头文件 |
库文件 |
---|---|---|---|
NN算子接口 |
Neural Network算子,CANN内置的基础算子,接口前缀为aclnnXxx,主要覆盖TensorFlow、Pytorch、MindSpore、ONNX等框架中深度学习算法相关的计算类型,例如常见的Softmax、MatMul、Convolution等。 |
aclnnop/aclnn_*.h (*表示具体的算子名称)
说明:
为兼容旧版本,旧版本NN/融合算子头文件路径是aclnnop/level2/aclnn_*.h,但后续版本该路径会废弃,建议使用新路径aclnnop/aclnn_*.h,防止后续版本出现兼容性问题。 |
|
融合算子接口 |
CANN内置的融合算子,接口前缀为aclnnXxx,由多个独立的基础“小算子”(如向量Vector、矩阵Cube等)融合而成,大算子功能与多个小算子功能等价,且大算子性能收益往往优于小算子。例如常见的Flash Attention、通算融合算子(简称MC2算子)等。 |
||
DVPP算子接口 |
Digital Vision Pre-Processing算子,接口前缀为acldvppXxx,提供高性能视频/图片编解码、图像裁剪缩放等预处理API。 |
acldvppop/acldvpp_base.h acldvppop/acldvpp_op_api.h |
libacl_dvpp_op.so |