CANN社区版
异构计算架构CANN(Compute Architecture for Neural Networks)是昇腾针对AI场景推出的异构计算架构,向上支持多种AI框架,包括MindSpore、PyTorch、TensorFlow等,向下服务AI处理器与编程,发挥承上启下的关键作用,是提升昇腾AI处理器计算效率的关键平台。同时针对多样化应用场景,提供多层次编程接口,支持用户快速构建基于昇腾平台的AI应用和业务。
环境准备
- 软件安装
不同操作系统及业务场景下安装、升级、卸载CANN。
应用开发
- AscendCL应用开发
使用AscendCL提供的C&C++、Python语言API开发AI应用,实现目标识别、图像分类等功能。相关API请参见AscendCL应用开发接口。
- ISP图像调优
ISP(Image Signal Processing)相关的算法和功能调试方法。相关API请参见ISP图像调优接口。
- OpenHiva应用开发
基于OpenHiva框架进行应用开发,为机器人业务提供高性能、高安全的通信和数据传输能力。相关API请参见OpenHiva应用开发接口。
算子开发
- 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 C++和PythonAPI构图(FlowGraph),相关API请参见DataFlow构图接口。
集合通信
- HCCL集合通信库
基于昇腾AI处理器的高性能集合通信库,提供单机多卡以及多机多卡间的数据并行、模型并行集合通信方案,相关API请参见HCCL集合通信库接口。
领域加速库
- ATB加速库
介绍Ascend Transformer Boost加速库的使用方法,提升Transformer模型的训练和推理开发效率,相关API请参见ATB加速库接口。
- LLM DataDist开发
使用LLM DataDist接口对大模型的推理进行分离部署,从而提高大模型推理的吞吐性能,相关API请参见LLM DataDist接口。
API
- AscendCL应用开发接口
提供系统配置、运行时管理、单算子执行、模型执行、媒体数据预处理等功能的C&C++和Python API。
- ISP图像调优接口
ISP提供的各种图像调优算法API。
- OpenHiva应用开发接口
OpenHiva框架提供的面向机器人的编程API。
- Ascend C算子开发接口
Ascend C提供的基础API、高阶API等。
- TBE&AI CPU算子开发接口
提供TBE&AI CPU算子开发需要使用的相关API。
- Ascend Graph构图接口
通过Ascend Graph API构造直接在昇腾平台上运行的图。
- DataFlow构图接口
通过DataFlow C++和Python API构建、修改、编译和执行计算图,同时提供UDF接口,支持用户通过FuncProcessPoint和GraphProcessPoint编写自定义处理函数。
- HCCL集合通信库接口
提供C与Python两种语言接口,分别实现单算子模式与图模式下的框架适配。
- AOL算子加速库接口
提供丰富的深度优化、硬件亲和的高性能算子。
- ATB加速库接口
使用ATB加速库需要的相关接口,包括公共类定义如Operation类、单算子类和图算子类等。
- LLM DataDist接口
LLM DataDist接口提供了集群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内存泄漏检测工具
模型训练和推理过程中的内存问题定位。