CANN商用版
异构计算架构CANN(Compute Architecture for Neural Networks)是昇腾针对AI场景推出的异构计算架构,向上支持多种AI框架,包括MindSpore、PyTorch、TensorFlow等,向下服务AI处理器与编程,发挥承上启下的关键作用,是提升昇腾AI处理器计算效率的关键平台。同时针对多样化应用场景,提供多层次编程接口,支持用户快速构建基于昇腾平台的AI应用和业务。
环境准备
- 软件安装
不同操作系统及业务场景下安装、升级、卸载CANN。
应用开发
- AscendCL应用开发 (C&C++)
使用AscendCL提供的C语言API开发AI应用,实现目标识别、图像分类等功能,相关API请参见AscendCL应用开发接口 (C&C++)。
- AscendCL应用开发 (Python)
使用AscendCL提供的Python语言API开发AI应用,实现目标识别、图像分类等功能,相关API请参见AscendCL应用开发接口 (Python)。
- ISP图像调优
ISP(Image Signal Processing)相关的算法和功能调试方法,相关API请参见ISP图像调优接口。
算子开发
- Ascend C算子开发
基于Ascend C算子编程语言进行算子开发,相关API请参见Ascend C算子开发接口。
- Ascend C最佳实践
Ascend C算子开发的性能优化思路、方法,和相关案例。
- TBE&AI CPU算子开发
基于TBE和AI CPU接口开发TBE/AI CPU自定义算子,相关API请参见TBE&AI CPU算子开发接口。
- 毕昇编译器
使用毕昇编译器将算子代码编译成二进制可执行文件和动态库等形式的指导。
图开发
- 图模式使用介绍
汇聚CANN支持的图模式使用场景,并给出各场景的流程指引。
- Ascend Graph开发
基于GE提供的Ascend Graph构图接口构造可直接在昇腾平台上运行的图,相关API请参见Ascend Graph构图接口。
- DataFlow开发
基于DataFlow构图接口构造可直接在昇腾平台上运行的FlowGraph,相关API请参见DataFlow构图接口和UDF接口。
集合通信
- HCCL集合通信库
基于昇腾AI处理器的高性能集合通信库,提供单机多卡以及多机多卡间的数据并行、模型并行集合通信方案,相关API请参见HCCL集合通信库接口。
领域加速库
- ATB加速库
介绍Ascend Transformer Boost加速库的使用方法,提升Transformer模型的训练和推理开发效率,相关API请参见ATB加速库接口。
- LLM DataDist开发
使用LLM DataDist接口对大模型的推理进行分离部署,从而提高大模型推理的吞吐性能,相关API请参见LLM DataDist接口。
API
- AscendCL应用开发接口
AscendCL提供系统配置、运行时管理、单算子执行、模型执行、媒体数据预处理等API库。
- ISP图像调优接口
ISP提供的各种图像调优算法API。
- Ascend C算子开发接口
Ascend C提供的基础API、高阶API等。
- TBE&AI CPU算子开发接口
TBE&AI CPU算子开发需要使用的相关API。
- Ascend Graph构图接口
通过Ascend Graph API构造直接在昇腾平台上运行的图。
- DataFlow构图接口
通过DataFlow API构建、修改、编译和执行计算图。
- UDF接口
UDF支持用户通过FuncProcessPoint和GraphProcessPoint编写自定义处理函数。
- HCCL集合通信库接口
提供C与Python两种接口,分别实现单算子模式与图模式下的框架适配。
- AOL算子加速库接口
提供丰富的深度优化、硬件亲和的高性能算子。
- ATB加速库接口
使用ATB加速库需要的相关接口,包括公共类定义如Operation类、单算子类和图算子类等。
- LLM DataDist接口
提供C++与Python两种接口,提供集群KV数据管理能力,支持全量图和增量图分离部署。
- AOE接口
AOE自动调优工具提供调优API用于自动调优,提供查询知识库API用于查询之前生成的知识库文件,获取tiling。
- RPing接口
开发者调用RPing接口可实现网络中的设备定期发送检测报文,记录网络时延,统计报文收发情况。
- 基础数据结构和接口
算子开发和图开发时依赖的基础数据结构和接口说明。
- 开放代码基础功能支撑接口
CANN开放代码中依赖的接口,包括错误上报接口、日志接口,本文旨在便于您了解这部分接口在CANN开放代码中的作用。
开发工具
- 开发工具快速入门
提供算子开发工具、大模型推理开发工具、PyTorch训练场景开发工具快速入门指导。
- 算子开发工具
算子开发工具集(msKPP、msOpGen、msOpST、msSanitizer、msDebug和msProf等)的使用指导。
- 算子编译工具
编译算子生成算子二进制文件。
- ATC离线模型编译工具
模型转换工具,将网络模型转换为昇腾AI处理器支持的.om格式离线模型。
- AOE调优工具
自动调优工具,充分利用硬件资源,提升网络的性能。
- 分析迁移工具
将PyTorch训练脚本一键式迁移至昇腾NPU。
- 精度调试工具
精度比对,辅助定位模型精度问题。
- 性能调优工具
训练、推理各运行阶段的性能数据采集和分析。
- HCCL性能测试工具
测试HCCL集合通信的功能正确性以及性能。
- AMCT模型压缩工具
模型压缩工具包,提供量化、张量分解等多种模型压缩特性。
- 算子及模型速查工具
查询当前版本CANN支持的模型和算子信息。
- msLeaks内存泄漏检测工具
模型训练和推理过程中的内存问题定位。
参考
- 故障处理
问题定位与处理方法,帮助开发者快速定位并解决故障。
- 日志参考
介绍日志的内容格式,以及如何查看日志、设置日志级别等。
- RPing功能开发
RPing是一种基于RDMA的网络探测技术,用以实现发送检测报文、记录网络时延、统计报文收发情况。
- 环境变量参考
基于CANN构建AI应用和业务过程中可使用的环境变量。
- 图融合和UB融合规则参考
昇腾AI处理器内置的一些图融合和UB融合规则,图融合和UB融合是整网性能提升的一种关键手段。
- 通信矩阵
产品开放的端口、该端口使用的传输层协议、通过该端口与对端通信的通信网元名称、认证方式、用途等信息说明。
- 软件安装指南 (开放态,Atlas 300I 推理卡)
Device的Control CPU开放场景下,如何安装、升级、卸载CANN。
- 软件安装指南 (开放态,Atlas 推理系列产品)
介绍Device的Control CPU开放场景下,如何安装、升级、卸载CANN。
- 产品文档 (开放态)
介绍Device的Control CPU开放场景下,CANN提供的产品文档。