AscendNPU-IR是基于MLIR(Multi-Level Intermediate Representation)构建的,面向昇腾亲和算子编译时使用的中间表示,提供昇腾完备表达能力,通过编译优化提升昇腾AI处理器计算效率,支持通过生态框架使能昇腾AI处理器与深度调优

🎯 项目介绍
AscendNPU IR(AscendNPU Intermediate Representation)是基于MLIR(Multi-Level Intermediate Representation)构建的,面向昇腾亲和算子编译时使用的中间表示,提供昇腾完备表达能力,通过编译优化提升昇腾AI处理器计算效率,支持通过生态框架使能昇腾AI处理器与深度调优。
AscendNPU IR提供多级抽象接口:提供一系列高层抽象接口,屏蔽昇腾计算、搬运、同步指令细节,编译优化自动感知硬件架构,将硬件无关表达映射到底层指令,提升算子开发易用性;同时提供细粒度性能控制接口,能够精准控制片上内存地址、流水同步插入位置以及是否使能乒乓流水优化等,允许性能细粒度控制。
AscendNPU IR通过开源社区开放接口,支持生态框架灵活对接,高效使能昇腾AI处理器。
🔗 仓库与文档
- GitCode: AscendNPU-IR
- GitHub: AscendNPU-IR
- 文档: 文档
🔍 仓库结构
AscendNPU IR仓关键目录如下所示:
├── bishengir // 源码目录
│ ├── cmake
│ ├── include // 头文件
│ ├── lib // 源文件
│ ├── test // 测试用例
│ │ └── Integration // 端到端用例
│ └── tools // 二进制工具
├── build-tools // 构建工具
├── CMakeLists.txt
├── docs // 文档
├── LICENSE
├── NOTICE
├── README.md
└── README_zh.md
📚 文档说明
本项目在 docs/ 目录下使用基于 Sphinx 的文档工程,通过成对的 Markdown 源文件提供英文与中文双语文档。
- 语言:完整文档方案请参见
docs/README.md(英文)与docs/README_zh.md(中文)。 - 文档组织方案:
- 英文:入口页为
docs/source/en/index.rst,正文位于docs/source/en目录下。 - 中文:入口页为
docs/source/zh_cn/index.rst,正文位于docs/source/zh_cn目录下。
- 英文:入口页为
- 命名规范:
docs/(包含docs/source/)下的目录名与文档文件名统一采用 snake_case 小写下划线风格,例如:quick_start/、installing_guide.md、user_guide/,以保持路径与 URL 风格一致。
在仓库根目录下构建文档:
make -C docs html # 仅英文 → docs/_build/en
make -C docs html-zh # 仅中文 → docs/_build/zh_cn
make -C docs html-all # 中英文均构建
关于本地预览、Read the Docs 部署、新增文档与整体结构说明,请参考 docs/README_zh.md(或英文版 docs/README.md)。
⚡️ 快速上手
快速上手指南请见:快速上手
编译与安装指南请见:构建安装
构建端到端用例示例请见:README_zh.md
| 示例名称 | 构建指南 |
|---|---|
| HIVM VecAdd | VecAdd README_zh.md |
📝 版本配套说明
请参考CANN社区版文档相关章节,对昇腾硬件、CANN软件及相应深度学习框架进行安装准备。
📄 许可证书
项目介绍
AscendNPU-IR是基于MLIR(Multi-Level Intermediate Representation)构建的,面向昇腾亲和算子编译时使用的中间表示,提供昇腾完备表达能力,通过编译优化提升昇腾AI处理器计算效率,支持通过生态框架使能昇腾AI处理器与深度调优
https://ascendnpu-ir.gitcode.com定制我的领域下载使用量
项目总下载次数(含Clone、Pull、 zip 包及 release 下载),每日凌晨更新