cann-learning-hub:基于 CANN 生态的学习中心项目

CANN 学习中心仓,支持在线互动运行、边学边练,提供教程、示例与优化方案,一站式助力昇腾开发者快速上手。

分支2Tags1
文件最后提交记录最后更新时间
3 个月前
2 个月前
30 天前
1 天前
2 天前
4 天前
3 天前
1 天前
27 天前
1 天前
3 个月前
2 个月前
1 天前
3 个月前
1 个月前

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 开发者生态。

本仓已集成代码仓库智能体,点击 Zread 徽章,进入其专属页面,开启在线智能代码学习与知识问答体验!

📝版本配套

本项目源码会基于CANN软件的非beta版本进行全量验证,关于CANN软件版本与本项目标签的对应关系请参阅release仓库中的相应版本说明,已验证情况如下表所示。

已验证支持CANN版本 验证日期
8.5.0 2026.03.02

🧭 开发者学习路径

按你的技术方向,快速找到最适合的入口:

课程课程简介在线体验状态
📖 CANN 基础知识
人工智能基础AI 发展历程、算子概念(算子名称/类型/Tensor/shape/format/Axis)在线体验✅ 已上线
什么是 NPU昇腾 NPU 硬件架构:DaVinci 核心、AI Core / AI CPU / Vector / Cube 计算单元、存储层级在线体验✅ 已上线
什么是 CANNCANN 异构计算架构与软件栈:分层架构、Ascend C 算子开发、torch_npu 适配在线体验✅ 已上线
Hello World:NPU 加法基于 torch_npu 在 NPU 上跑通第一个加法运算,验证环境可用在线体验✅ 已上线
🧠 大模型推理
在昇腾上跑通 Qwen3-0.6B快速上手:第一个大模型推理部署(在线推理,看功能是否正确)✅ 已上线
Qwen3-0.6B 推理(图模式)快速上手:第一个大模型推理加速实践(通过图模式加速推理)✅ 已上线
Qwen3-0.6B 推理(融合算子替换)快速上手:第一个大模型推理加速实践(通过替换融合算子加速推理)✅ 已上线
端到端推理性能优化实践Sana-Video 推理优化实践🚧 建设中
推理优化系列(初级)大模型演化 / 结构 / 推理流程 / 多模态扩展🚧 建设中
推理优化系列(中级)Qwen3-8B 单卡部署 / 性能分析基础 / 主流优化技术 / 量化🚧 建设中
推理优化系列(高级)Profiling 与瓶颈定位 / Qwen3-8B 优化实践🚧 建设中
🏋️ 大模型训练
大模型训练系列(初级)训练基础原理、昇腾 NPU 特性、入门训练实战🚧 建设中
大模型训练系列(中级)性能分析、CANN 图优化、显存优化、基础调优🚧 建设中
大模型训练系列(高级)核心算子优化、分布式训练、通信优化、端到端优化落地🚧 建设中
⚙️ 算子开发
10 分钟体验自定义算子快速上手:第一个自定义算子在线体验✅ 已上线
10 分钟体验算子 API 调用快速体验调用 CANN 内置算子 API 进行计算在线体验✅ 已上线
Ascend C 算子开发系列(初级):第一章 / 第二章算子基础 / CANN 架构 / 算子开发基础 / Add 算子实践在线体验✅ 已上线
Ascend C 算子开发系列(中级):第三章 / 第四章 / 第五章 / 第六章Vector 算子开发 / Cube 算子开发 / 融合算子开发 / 开源算子仓在线体验✅ 已上线
Ascend C 算子开发系列(高级):第七章 / 第八章Ascend C 算子功能调试 / 性能优化在线体验✅ 已上线
算子开发实战系列MC2 融合算子实战在线体验✅ 已上线
HiXL 单边通信开发HiXL 应用开发教程在线体验✅ 已上线
算子开发练习开放题库 / 历届算子赛真题等CANNJudge 开放题库✅ 已开放
参加算子赛算子天梯赛 / 校园赛等各种大赛等你挑战CANN 大赛专区✅ 已开放
📊 推荐系统开发
QuickStart:CTR 预测(DeepFM)跑通 CTR 训练链路 DataFrame → Feature → DataGenerator → DeepFM → CTRTrainer → AUC在线体验✅ 已上线
序列兴趣建模:DIN使用 Amazon-Electronics 样例数据理解历史行为序列、SequenceFeature 与 DIN attention在线体验✅ 已上线
匹配/召回:DSSM + Annoy基于 MovieLens-1M 样例数据跑通双塔召回与向量 Top-K 检索在线体验✅ 已上线
多任务学习:MMOE使用 Ali-CCP 样例数据演示多目标建模、expert、gate 与 tower在线体验✅ 已上线
实验跟踪:model_logger演示 WandB / SwanLab / TensorBoardX 等轻量实验跟踪接入方式在线体验✅ 已上线
模型导出与推理验证:ONNX演示 DeepFM 与 DSSM 的 ONNX 导出、ONNXRuntime 推理验证和量化入口在线体验✅ 已上线

🔗 学 · 练 · 赛:一站式成长链路

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 BotCANN Bot 系列课程🚧 建设中

🔍 目录结构

├── quick_start                        # 快速入门
│   ├── first_custom_operator          # 第一个自定义算子
│   ├── first_operator_api_call        # 第一个算子 API 调用
│   └── first_llm_inference            # 第一个大模型推理和优化
├── 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                       # 算子(13 篇)
│   ├── inference                      # 推理(12 篇)
│   └── training                       # 训练(3 篇)
├── contrib                            # 社区贡献
│   └── tutorials                      # 外部贡献教程
│       ├── torch-rechub               # Torch-RecHub 推荐系统实战教程
│       └── swan_llm_course            # SwanLab 共建:LLM 微调实战
├── skills                             # CANNBot 技能
│   ├── ascendc-ops-project           # 自定义算子工程生成
│   └── cannjudge-submit              # CANNJudge 竞赛提交
├── docs                               # 文档与指南
│   ├── cannlab_env_experience_guide.md 	# CANNLab 环境体验指南
│   └── acceptance_criteria_for_new_course_submission_and_launch.md 	# 新课程上库与上线验收标准
└── 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 miss2025.11
Ascend C 矩阵乘接口选型指南矩阵乘 API 接口对比与选型建议2025.10
msSanitizer 异常检测工具单算子开发异常检测,定位内存访问、数据竞争与同步问题2025.10
NDDMA 多维数据搬运多维 DMA 搬运与 Padding、Transpose、Broadcast、Slice 变换2025.10
Regbase 编程范式从向量加法理解寄存器级编程与底层性能优化2025.10
推理
Overlap Scheduling 吞吐优化CPU 与 NPU 执行重叠,TPS 提升约 70%2026.3
npugraph_ex 第三方框架集成图编译与编译缓存能力接入,降低冷启动耗时2026.2
Deepseek-R1 SuperPoD 推理优化全栈协同,TTFT<2s、TPOT<50ms,608 QPM2025.12
HIXL、Mooncake 与 vLLM KV Cache 池化KV Cache 池化 + D2D/H2H 传输,降低 TTFT2025.12
HIXL RL 长尾时延优化PD 分离与高效传输,缓解千卡集群长尾2025.12
LongCat-Flash SuperPod 推理优化多流并发 + 控核 + SuperKernel,TPOT 10ms2025.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 RL2026.3
FlashRecovery 训练故障恢复降低检查点 I/O 与回滚重算损失2025.12
SAM 投机解码 RL 训练无辅助模型 SAM 投机解码,超 35% 长尾加速2025.12

💬相关信息

🤝联系我们

本项目功能和文档正在持续更新和完善中,欢迎您持续关注。

  • 问题反馈:通过GitCode【Issues】提交问题。
  • 社区互动:通过GitCode【讨论】参与交流。
  • 技术专栏:通过GitCode【Wiki】获取技术文章。

项目介绍

CANN 学习中心仓,支持在线互动运行、边学边练,提供教程、示例与优化方案,一站式助力昇腾开发者快速上手。

定制我的领域