cann-learning-hub
🔥Latest News
- [2026/05] cann-learning-hub新增MC2融合算子开发系列教程,讲解MC2融合算子核心概念与开发方法。
- [2026/05] 新增HIXL应用开发系列教程,讲解昇腾单边通信库核心概念与开发方法。
- [2026/04] cann-learning-hub新增skills目录,包含CANNJudge竞赛skill及自定义算子工程算子生成skill。
- [2026/03] cann-learning-hub技术博客内容添加(blogs目录)
- [2026/03] cann-learning-hub项目首次上线。
🚀概述
cann-learning-hub 是CANN (Compute Architecture for Neural Networks)生态的官方开源学习中心仓库,聚焦 NPU 加速计算开发能力培养,汇聚从入门到进阶的全栈学习资源。 仓库涵盖 CANN 全栈加速计算的系列示例与最佳实践教程,支持以 Notebook 方式在线 / 离线交互式运行,帮助开发者零门槛上手。 我们致力于打造动态、全面的 CANN 知识平台,系统化整理入门指南、高级优化教程、精选算子与模型示例及经过验证的最佳实践方案。通过持续迭代更新,助力开发者快速掌握 CANN 开发技能,高效释放昇腾 NPU 算力,加速 AI 应用的开发与创新。 欢迎广大开发者贡献案例、教程、文档及各类学习资源,共建开放共享的 CANN 开发者生态。
本仓已集成代码仓库智能体,点击 徽章,进入其专属页面,开启在线智能代码学习与知识问答体验!
📝版本配套
本项目源码会基于CANN软件的非beta版本进行全量验证,关于CANN软件版本与本项目标签的对应关系请参阅release仓库中的相应版本说明,已验证情况如下下表所示。
| 已验证支持CANN版本 | 验证日期 |
|---|---|
| 8.5.0 | 2026.03.02 |
🧭 开发者学习路径
按你的技术方向,快速找到最适合的入口:
| 我想做… | 从这里开始 | 状态 |
|---|---|---|
| 写高性能 NPU 算子 | Ascend C 算子开发教程 | ✅ 已上线 |
| 10 分钟体验自定义算子 | 快速上手:第一个自定义算子 | ✅ 已上线 |
| 10 分钟体验算子 API 调用 | 快速上手:第一个算子 API 调用 | ✅ 已上线 |
| MC2 融合算子实战 | 算子开发实战系列 | ✅ 已上线 |
| HiXL 单边通信开发 | HiXL 应用开发教程 | ✅ 已上线 |
| 大模型微调实战 | SwanLab 共建:LLM 微调实战课程 | 🔍 评审中 |
| 推理性能优化 | Sana-Video 推理优化实践 | ✅ 已上线 |
| 刷题练手 | CANNJudge 开放题库 | ✅ 已开放 |
| 参加大赛 | CANN 大赛专区 | ✅ 已开放 |
🔗 学 · 练 · 赛:一站式成长链路
cann-learning-hub 不是孤立的"看教程",而是打通学习到实战的完整闭环:
| 平台 | 说明 | |
|---|---|---|
| 📖 学 | cann-learning-hub(本仓) | 系列教程 + 快速上手 + 参考实践 + 技术博客 |
| 🏋️ 练 | CANNJudge | 开放题库,Ascend C 算子编程在线刷题,实时评测 |
| 🔬 练 | CANNLab | 任意 CANN 代码仓右上角一键启动,获得 NPU 环境用于练习 & 调测(初始 100 小时,积分可兑换时长) |
| 🏆 赛 | CANN 大赛专区 | 官方 / 社区大赛报名入口,与全国开发者同台竞技 |
💡 推荐路径:选方向 → 看教程 → 去 CANNJudge 刷题 / CANNLab 实验 → 参赛验证 → 贡献你的实践(PR 到 contrib/)
📚 系列课程全景
✅ 已上线 🔍 评审中(PR 已提交) 🚧 建设中
| 业务场景 | 课程系列 | 进展 |
|---|---|---|
| 算子开发 | Ascend C 算子开发系列(基于 A2/A3,SIMD 编程) | ✅ 已上线 |
| Ascend C 算子开发系列(基于 A5,SIMD 兼容 A2/A3 + 新增 SIMT) | 🚧 建设中 | |
| 算子开发实战系列(MC2 融合算子) | ✅ 已上线 | |
| PyPTO 算子开发系列 | 🚧 建设中 | |
| PyASC 算子开发系列 | 🚧 建设中 | |
| TileLang 算子开发系列 | 🚧 建设中 | |
| 训练 | 大模型训练优化 | 🚧 建设中 |
| 大语言模型微调实战(SwanLab 共建) | 🔍 评审中 | |
| 推理 | 大模型推理优化 | 🚧 建设中 |
| Sana-Video 推理优化实践 | ✅ 已上线 | |
| 推荐系统 | 推荐系统开发(DataWhale 贡献) | ✅ 已上线 |
| 应用开发 | 应用开发系列 | 🚧 建设中 |
| 图框架 | 图框架加速 & 图模式应用系列 | 🚧 建设中 |
| 集合通信 | HCCL 集合通信系列 | 🚧 建设中 |
| HiXL 单边通信系列 | ✅ 已上线 | |
| CANN Bot | CANN Bot 系列课程 | 🚧 建设中 |
🔍 目录结构
├── quick_start # 快速入门
│ ├── first_custom_operator # 第一个自定义算子
│ └── first_operator_api_call # 第一个算子 API 调用
├── tutorials # 开发教程
│ ├── ascendc_operator_development # Ascend C 算子开发(8 章)
│ ├── MC2_fused_operator_development # MC2 融合算子开发
│ ├── hixl_development # HiXL 单边通信应用开发(4 章)
│ └── ... # 待扩展(PyPTO / TileLang 等)
├── reference_practice # 参考实践
│ ├── model_inference_optimization # 模型推理优化
│ │ └── sana_video # Sana-Video 推理优化
│ └── pytorch_online_inference_operator_optimize # PyTorch 在线推理算子优化
├── blogs # 技术博客
│ ├── operator # 算子(10 篇)
│ ├── inference # 推理(12 篇)
│ └── training # 训练(3 篇)
├── contrib # 社区贡献
├── contrib # 用户贡献
│ ├── tutorials # 外部贡献教程
│ │ ├── torch-rechub # Torch-RecHub推荐系统实战教程
│ │ └── swan_llm_course # SwanLab 共建:LLM 微调实战
├── skills # CANNBot 技能
│ ├── ascendc-ops-project # 自定义算子工程生成
│ └── cannjudge-submit # CANNJudge 竞赛提交
├── operators # 算子仓工作目录
│ ├── addcmul # addcmul 算子
│ ├── as_strided # as_strided 算子
│ └── erf # erf 算子
├── docs # 文档与指南
│ └── gitcode_env_experience_guide # gitcode 环境体验指南
└── README.md
📝 技术博客
CANN 在实际业务场景中的最新技术实践与成果。
算子
| 博客 | 简介 | 时间 |
|---|---|---|
| AICPU 点对点通信算子开发 | 基于 AICPU+TS 实现 HCCL 自定义 Send/Recv 算子 | 2026.2 |
| AICPU Tiling 下沉编程 | Tiling 计算下沉到 AICPU,减少 Host 与 Device 交互 | 2025.12 |
| Ascend C RTC 即时编译 | 运行时按 shape 即时编译,兼顾性能与迭代灵活性 | 2025.12 |
| DeepXTrace 快慢卡在线检测 | MOE 推理集群轻量级快慢卡诊断,分钟级定位 | 2025.12 |
| HCCL ReduceScatter 精度优化 | 开源 ReduceScatter 精度增强改造 | 2025.12 |
| MIX 算子开发贡献 | 矩阵化重构 RoPE,落地首个开源 MIX 算子 | 2025.12 |
| CrossEntropyLoss 与 Zloss 融合 | 损失函数融合,MoE 场景端到端 5.2% 效率提升 | 2025.11 |
| 算子 Kernel 直调编程 | 异构混合编程,简化编译部署,降低开发门槛 | 2025.11 |
| TilingKey 模板化编程 | 统一多场景算子管理,减少 icache miss | 2025.11 |
| Ascend C 矩阵乘接口选型指南 | 矩阵乘 API 接口对比与选型建议 | 2025.10 |
推理
| 博客 | 简介 | 时间 |
|---|---|---|
| Overlap Scheduling 吞吐优化 | CPU 与 NPU 执行重叠,TPS 提升约 70% | 2026.3 |
| npugraph_ex 第三方框架集成 | 图编译与编译缓存能力接入,降低冷启动耗时 | 2026.2 |
| Deepseek-R1 SuperPoD 推理优化 | 全栈协同,TTFT<2s、TPOT<50ms,608 QPM | 2025.12 |
| HIXL、Mooncake 与 vLLM KV Cache 池化 | KV Cache 池化 + D2D/H2H 传输,降低 TTFT | 2025.12 |
| HIXL RL 长尾时延优化 | PD 分离与高效传输,缓解千卡集群长尾 | 2025.12 |
| LongCat-Flash SuperPod 推理优化 | 多流并发 + 控核 + SuperKernel,TPOT 10ms | 2025.12 |
| npugraph_ex 图模式优化 | aclGraph 图捕获与重放,减少 Host 下发 | 2025.12 |
| torch_npu IPC 特性 | 跨进程共享设备内存,节省显存 | 2025.12 |
| TorchAir 自定义 FX Pass | 多流并行自动图变换,减少适配代码 | 2025.12 |
| SGLang、Mooncake 与 HIXL PD 分离 | 加速 PD 分离 D2D 特性落地 | 2025.11 |
| SuperKernel 技术综述 | 整网编译为大算子,性能再提升 10%-20% | 2025.11 |
| vLLM-Ascend 推理优化 | PagedAttention + 昇腾适配,提升吞吐 | 2025.11 |
训练
| 博客 | 简介 | 时间 |
|---|---|---|
| AReaL 全异步 RL 训练 | 全异步 RL + Single Controller,解耦式 Agentic RL | 2026.3 |
| FlashRecovery 训练故障恢复 | 降低检查点 I/O 与回滚重算损失 | 2025.12 |
| SAM 投机解码 RL 训练 | 无辅助模型 SAM 投机解码,超 35% 长尾加速 | 2025.12 |
💬相关信息
🤝联系我们
本项目功能和文档正在持续更新和完善中,欢迎您持续关注。