CANN社区版
异构计算架构CANN(Compute Architecture for Neural Networks)是昇腾针对AI场景推出的异构计算架构,向上支持多种AI框架,包括MindSpore、PyTorch、TensorFlow等,向下服务AI处理器与编程,发挥承上启下的关键作用,是提升昇腾AI处理器计算效率的关键平台。同时针对多样化应用场景,提供多层次编程接口,支持用户快速构建基于昇腾平台的AI应用和业务。
应用开发
算子开发
图开发
领域加速库
API
- AscendCL应用开发接口 (C&C++)
提供系统配置、运行时管理、单算子执行、模型执行、媒体数据预处理等C&C++ API库。
- AscendCL应用开发接口 (Python)
提供系统配置、运行时管理、单算子执行、模型执行、媒体数据预处理等Python API库。
- ISP图像调优接口
ISP提供的各种图像调优算法API。
- OpenHiva应用开发接口
OpenHiva框架提供的面向机器人的编程API。
- Ascend C算子开发接口
Ascend C提供的基础API、高阶API等,开发者使用标准C++语法和类库API进行编程,实现算子开发。
- TBE&AI CPU算子开发接口
提供TBE&AI CPU算子开发需要使用的相关API。
- Ascend Graph构图接口
通过Ascend Graph API构造直接在昇腾平台上运行的图。
- DataFlow构图接口 (C++)
通过DataFlow C++ API构建、修改、编译和执行计算图。
- DataFlow构图接口 (Python)
通过DataFlow Python API构建、修改、编译和执行计算图。
- UDF接口 (C++)
UDF支持用户通过FuncProcessPoint和GraphProcessPoint编写自定义处理函数。
- UDF接口 (Python)
UDF支持用户通过FuncProcessPoint和GraphProcessPoint编写自定义处理函数。
- HCCL集合通信库接口
提供了C与Python两种语言接口,分别实现单算子模式与图模式下的框架适配。
- AOL算子加速库接口
提供丰富的深度优化、硬件亲和的高性能算子。
- ATB加速库接口
使用ATB加速库需要的相关接口,包括公共类定义如Operation类、单算子类和图算子类等。
- LLM DataDist接口 (C++)
LLM-DataDist接口提供了集群KV数据管理能力,以支持全量图和增量图分离部署。
- LLM DataDist接口 (Python)
LLM-DataDist接口提供了集群KV数据管理能力,以支持全量图和增量图分离部署。
- AOE接口
AOE自动调优工具提供调优API用于自动调优,提供查询知识库API用于查询之前生成的知识库文件,获取tiling。
- RPing接口
开发者调用RPing接口可实现网络中的设备定期发送检测报文,记录网络时延,统计报文收发情况。
- 基础数据结构和接口
算子开发和图开发时依赖的基础数据结构和接口说明。
- 开放代码基础功能支撑接口
CANN开放代码中依赖的接口,包括错误上报接口、日志接口,本文旨在便于您了解这部分接口在CANN开放代码中的作用。
开发工具
- 开发工具快速入门
提供PyTorch训练场景开发工具、大模型推理开发工具、算子开发工具快速入门指导。
- 算子开发工具
算子开发工具集(msKPP、msOpGen、msOpST、msSanitizer、msDebug和msProf等)的使用指导。
- 算子编译工具
编译算子生成算子二进制文件。
- ATC离线模型编译工具
模型转换工具。
- AOE调优工具
自动调优工具,充分利用有限的硬件资源,以满足算子和整网的性能要求。
- 分析迁移工具
提供PyTorch训练脚本一键式迁移至昇腾NPU的功能,少量代码修改或零代码完成迁移。
- 精度调试工具
提供自有实现算子的运算结果与业界标杆算子运算结果之间差异比对的功能。
- 性能调优工具
采集和分析AI任务各个运行阶段的关键性能指标,根据输出的性能数据,定位软、硬件性能瓶颈。
- HCCL性能测试工具
分布式场景下,测试HCCL集合通信的性能以及功能正确性。
- AMCT模型压缩工具
针对昇腾芯片亲和的模型压缩工具,提供量化、稀疏等多种模型压缩特性,压缩后部署模型达到性能提升的目标。
- 算子及模型速查工具
查询当前版本CANN支持的模型和算子信息。
- msleaks内存泄漏检测工具
用于模型训练和推理过程中的内存问题定位。