cann-learning-hub - 昇腾CANN学习资源一站式指南
你不是搞算子的,用 Python ACL 就够了。
模式E(学习路线)+ 仓库概览类型
刚接触昇腾CANN那会,我最大的感受是:资料太多,不知道从哪下手。官方文档、技术博客、视频教程、开源仓库……散落在各处,找个小问题的答案要翻半天。
直到我发现 cann-learning-hub 这个仓库——昇腾社区把学习资源全部整合到一个地方了。
cann-learning-hub 是什么
简单说,cann-learning-hub 是昇腾CANN开源社区的学习中心。它不是代码仓库,是一个资源导航 + 教程集合 + 竞赛入口的综合性仓库。
在 CANN 五层架构里,cann-learning-hub 比较特殊:
- 不属于任何一层:它是社区运营仓库,不是技术组件
- 服务于所有层:无论你做应用开发(第1层)、算子开发(第2层)还是编译器开发(第3层),都能在这里找到对应的学习资源
仓库里有什么
cann-learning-hub 的内容可以分成四大类:
1. 教程文档(Tutorials)
覆盖从入门到精通的全路径:
- 入门系列:CANN 架构概览、AscendCL 接口入门、第一个算子开发
- 进阶系列:算子融合原理、图编译流程、性能调优技巧
- 实战系列:大模型推理部署、视觉类应用开发、分布式训练
每个教程都有完整的代码示例,可以直接克隆下来跑。
2. 技术博客(Blogs)
社区定期发布深度技术文章,比如:
- “FlashAttention 在昇腾NPU上的优化实践”
- “catlass 模板库:让算子开发效率提升10倍”
- “GE 图引擎原理剖析:如何实现代码零修改性能最大化”
这些博客的质量比官方文档高,因为都是一线开发者写的踩坑总结。
3. 竞赛与活动(Competitions)
cann-learning-hub 是昇腾社区竞赛的信息入口:
- 算子优化竞赛:比谁写的算子更快
- 模型移植竞赛:比谁把 PyTorch 模型搬到昇腾NPU 上跑得更快
- 应用创新竞赛:用 CANN 做有趣的应用
参赛不仅能拿奖金,还能直接跟昇腾官方团队的技术专家交流。
4. Skill 市场(Skills)
这是 cann-learning-hub 最特别的地方——它集成了 CANN 内容生成 Skill。
你可以用这些 Skill 自动生成技术文章、算子文档、教程内容。比如:
cann-content-gen:批量生成 CANN 技术文章(就是我现在用的这个)cann-doc-gen:自动生成算子 API 文档cann-tutorial-gen:根据代码自动生成教程
学习路线推荐
不同角色的人,学习路径不一样。cann-learning-hub 给了几条经典路线:
路线A:应用开发者(用 CANN 做模型推理/训练)
- 第1周:读 CANN 架构概览,理解五层架构
- 第2周:学 AscendCL 接口,跑通第一个推理样例(cann-samples 仓)
- 第3周:学 PyTorch/MindSpore 框架适配,把自己的模型搬过来
- 第4周:学性能调优(AOE 调优引擎),把推理速度提上去
一句话总结:你不是搞算子的,用 Python ACL 就够了。
路线B:算子开发者(写算子优化性能)
- 第1周:读 catlass 模板库教程,理解分层模板设计
- 第2周:学 Ascend C 编程语言,写第一个算子(HelloOp)
- 第3周:学 ops-transformer/ops-nn 仓的算子实现,理解融合策略
- 第4周:学性能调优,用 AOL 算子库测性能
一句话总结:你想榨干 NPU 的每一滴性能,得从算子层优化。
路线C:生态贡献者(给 CANN 开源社区做贡献)
- 第1周:读 community 仓的贡献指南,理解 PR 流程
- 第2周:挑一个 good first issue,提交第一个 PR
- 第3周:参与 cann-agreements 讨论,理解开源协议
- 第4周:自己发现痛点,提一个 feature request 或 bug fix
一句话总结:你不只是用户,还是共建者。
怎么用 cann-learning-hub
第1步:克隆仓库
git clone https://atomgit.com/cann/cann-learning-hub.git
cd cann-learning-hub
第2步:按角色选路线
仓库根目录下有 README.md,列出了所有学习资源的入口。按你的角色(应用开发者/算子开发者/生态贡献者)选对应的目录:
# 应用开发者
cd tutorials/application-development
# 算子开发者
cd tutorials/operator-development
# 生态贡献者
cd contribution-guide
第3步:跟着教程走
每个教程目录里都有 README.md + 代码样例 + 环境配置脚本。照着做就行,踩坑点都标注了。
第4步:参与竞赛/社区
学完了想实战?去 competitions/ 目录看当前进行的竞赛,选一个报名参加。
下一步
直接去 cann-learning-hub 仓库逛逛,比在网上瞎找资料效率高 10 倍:
https://atomgit.com/cann/cann-learning-hub
顺便说一句,如果你想系统学 CANN,从这个仓库开始,少走 80% 的弯路。
鲲鹏昇腾开发者社区是面向全社会开放的“联接全球计算开发者,聚合华为+生态”的社区,内容涵盖鲲鹏、昇腾资源,帮助开发者快速获取所需的知识、经验、软件、工具、算力,支撑开发者易学、好用、成功,成为核心开发者。
更多推荐

所有评论(0)